C# 翻转二叉树

这篇具有很好参考价值的文章主要介绍了C# 翻转二叉树。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

226 翻转二叉树

给你一棵二叉树的根节点 root ,翻转这棵二叉树,并返回其根节点。

示例 1:
C# 翻转二叉树,算法练习初级,c#,开发语言,leetcode

输入:root = [4,2,7,1,3,6,9]
输出:[4,7,2,9,6,3,1]
示例 2:

C# 翻转二叉树,算法练习初级,c#,开发语言,leetcode

输入:root = [2,1,3]
输出:[2,3,1]
示例 3:

输入:root = []
输出:[]

提示:

树中节点数目范围在 [0, 100] 内
-100 <= Node.val <= 100

来源:力扣(LeetCode)
链接:https://leetcode.cn/problems/invert-binary-tree

解决方案:

提供思路

我们从根节点开始,递归地对树进行遍历,并从叶子节点先开始翻转。如果当前遍历到的节点 root 的左右两棵子树都已经翻转,那么我们只需要交换两棵子树的位置,即可完成以 root 为根节点的整棵子树的翻转。

上代码:

/**
* Definition for a binary tree node.
* public class TreeNode {
*     public int val;
*     public TreeNode left;
*     public TreeNode right;
*     public TreeNode(int val=0, TreeNode left=null, TreeNode right=null) {
*         this.val = val;
*         this.left = left;
*         this.right = right;
*     }
* }
*/
public class Solution
{
    public TreeNode InvertTree(TreeNode root)
    {
        if (root == null)
        {
            return null;
        }
        InvertTree(root.left);
        InvertTree(root.right);
        TreeNode temp = root.left;
        root.left = root.right;
        root.right = temp;
        return root;
    }
}

个人感悟:题不难,别把自己吓住,是个节点切换的事。

以上是碰到的第二百二十六题,后续持续更新。感觉对你有帮助的小伙伴可以帮忙点个赞噢!
C# 翻转二叉树,算法练习初级,c#,开发语言,leetcode文章来源地址https://www.toymoban.com/news/detail-610695.html

到了这里,关于C# 翻转二叉树的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 二叉树OJ练习题(C语言版)

    目录  一、相同的树  二、单值二叉树  三、对称二叉树  四、树的遍历 前序遍历 中序遍历 后序遍历  五、另一颗树的子树  六、二叉树的遍历  七、翻转二叉树  八、平衡二叉树 链接:100. 相同的树 - 力扣(LeetCode) 首先考虑比较时节点为空的情况,当比较到二者节点都

    2024年02月19日
    浏览(37)
  • 二叉树OJ题:LeetCode--226.翻转二叉树

    朋友们、伙计们,我们又见面了,本期来给大家解读一下LeetCode中第226道二叉树OJ题,如果看完之后对你有一定的启发,那么请留下你的三连,祝大家心想事成! 数据结构与算法专栏: 数据结构与算法 个  人  主  页  : stackY、 C 语 言 专 栏 : C语言:从入门到精通 LeetCo

    2024年02月11日
    浏览(44)
  • 每天一道算法练习题--Day15 && 第一章 --算法专题 --- -----------二叉树的遍历

    二叉树作为一个基础的数据结构,遍历算法作为一个基础的算法,两者结合当然是经典的组合了。很多题目都会有 ta 的身影,有直接问二叉树的遍历的,有间接问的。比如要你找到树中满足条件的节点,就是间接考察树的遍历,因为你要找到树中满足条件的点,就需要进行遍

    2024年02月01日
    浏览(49)
  • day15 层序遍历 翻转二叉树 对称二叉树

    题目链接:102 二叉树的层序遍历 题意 根据二叉树的根节点root,返回其节点值的层序遍历 借助队列实现,因为队列是先进先出的逻辑,符合层序遍历一层一层遍历的思想 代码 题目链接:226 翻转二叉树 题意 根据二叉树的根节点root,翻转二叉树,将节点是左右孩子进行翻转

    2024年01月22日
    浏览(49)
  • 翻转二叉树,力扣

    目录 题目地址: 题目: 我们直接看题解吧: 快速理解解题思路小建议: 解题方法: 方法分析: 解题分析: 具体流程: 代码实现(递归): 补充说明: 解题思路(利用栈/队列): 具体流程: 226. 翻转二叉树 - 力扣(LeetCode) 难度:简单 今天刷翻转二叉树,大家有兴趣可以点

    2024年01月23日
    浏览(34)
  • 【力扣 - 翻转二叉树】

    给你一棵二叉树的根节点 root ,翻转这棵二叉树,并返回其根节点。 树中节点数目范围在 [0, 100] 内 这是一道很经典的二叉树问题。显然,我们从根节点开始,递归地对树进行遍历,并从叶子节点先开始翻转。如果当前遍历到的节点 root 的左右两棵子树都已经翻转,那么我们

    2024年02月22日
    浏览(28)
  • 226. 翻转二叉树

    2024年02月15日
    浏览(47)
  • 【数据结构】单值二叉树 & 相同的树 & 翻转二叉树(五)

      目录 一,单值二叉树 题目详情: 解法:父子比较法 解题思路: 思路实现: 源代码: 二,相同的树 题目详情: 解法:比较法 解题思路: 思路实现: 源代码: 三,翻转二叉树 解法:替换法 解题思路: 思路实现: 源代码: 题目详情: 如果 二叉树 每个节点都具有 相

    2024年02月07日
    浏览(68)
  • LeetCode 226. 翻转二叉树

    给你一棵二叉树的根节点 root ,翻转这棵二叉树,并返回其根节点。 示例 1: 输入:root = [4,2,7,1,3,6,9] 输出:[4,7,2,9,6,3,1] 示例 2: 输入:root = [2,1,3] 输出:[2,3,1] 示例 3: 输入:root = [] 输出:[] 提示: 方法一:递归 思路与算法 这是一道很经典的二叉树问题。显然,我们从根

    2024年04月13日
    浏览(36)
  • day15 | 层序遍历、 226.翻转二叉树、 101. 对称二叉树

    目录: 题目链接: 层序遍历 给你二叉树的根节点  root  ,返回其节点值的  层序遍历  。 (即逐层地,从左到右访问所有节点)。 随想录:借助一个队列实现。 102. 二叉树的层序遍历 107.二叉树的层次遍历 II 最后只需要将result的顺序改一下就行,但是注意,reverse是直接

    2024年02月08日
    浏览(78)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包