LeetCode 226. 翻转二叉树

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

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

示例 1:
LeetCode 226. 翻转二叉树,leetcode,linux,算法

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

示例 2:
LeetCode 226. 翻转二叉树,leetcode,linux,算法

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

示例 3:

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

提示:

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

方法一:递归

思路与算法

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

public TreeNode invertTree(TreeNode root) {
        if (root == null) {
            return null;
        }
        TreeNode left = invertTree(root.left);
        TreeNode right = invertTree(root.right);
        root.left = right;
        root.right = left;
        return root;
    }

LeetCode 226. 翻转二叉树,leetcode,linux,算法文章来源地址https://www.toymoban.com/news/detail-850396.html

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

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

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

相关文章

  • Day15|leetcode层序遍历(10道题)、226.翻转二叉树、101.对称二叉树

    视频链接:讲透二叉树的层序遍历 | 广度优先搜索 | LeetCode:102.二叉树的层序遍历_哔哩哔哩_bilibili 看完视频可以一口气做十道题!(102、107、199、637、429、515、116、117、104、111) 二叉树的层序遍历如图所示: 题目链接:226. 翻转二叉树 - 力扣(LeetCode) 视频链接:听说一位

    2024年02月11日
    浏览(79)
  • 代码随想录Day12 二叉树 LeetCode T102二叉树的层序遍历 T226 翻转二叉树 T101 对称二叉树

    本文思路和详细讲解来自于:代码随想录 (programmercarl.com) 题目链接:102. 二叉树的层序遍历 - 力扣(LeetCode) 本题使用队列辅助完成,讲解主要函数CheckOrder:首先判断root是否为空,是就直接返回,然后创建队列,向里加入root元素,计算队列的长度,也就是每一层的元素个数,while循环,si

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

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

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

    2024年02月08日
    浏览(77)
  • 代码随想录day13 | 226.翻转二叉树 101.对称二叉树

    使用前、后序反转最为方便。 为啥不推荐中序? 中序遍历,某些节点的左右孩子会翻转两次,某些节点左右孩子不会被反转。 101.对称二叉树 关键在于,看这个节点对应的左子树和右子树是否可以相互反转。 1、如何比较呢? 比较的是两个子树的里侧和外侧的元素是否相等

    2024年02月15日
    浏览(39)
  • 【leetcode100-038/039/040/041】【二叉树】翻转/对称/直径/层序遍历

    今天看题目真的太简单了,干脆一起写了。 【二叉树翻转】 给你一棵二叉树的根节点  root  ,翻转这棵二叉树,并返回其根节点。 思路: 先交换左右子节点,再递归处理左右子树(或者反过来也行)。 【镜像二叉树】 给你一个二叉树的根节点  root  , 检查它是否轴对称

    2024年01月19日
    浏览(57)
  • LeetCode 0103.二叉树的锯齿形层序遍历:层序遍历 + 适时翻转

    力扣题目链接:https://leetcode.cn/problems/binary-tree-zigzag-level-order-traversal/ 给你二叉树的根节点 root ,返回其节点值的 锯齿形层序遍历 。(即先从左往右,再从右往左进行下一层遍历,以此类推,层与层之间交替进行)。   示例 1: 示例 2: 示例 3:   提示: 树中节点数目在范

    2024年02月20日
    浏览(39)
  • LeetCode算法二叉树—222. 完全二叉树的节点个数

    目录 222. 完全二叉树的节点个数 - 力扣(LeetCode) 代码: 运行结果:  给你一棵  完全二叉树  的根节点  root  ,求出该树的节点个数。 完全二叉树 的定义如下:在完全二叉树中,除了最底层节点可能没填满外,其余每层节点数都达到最大值,并且最下面一层的节点都集

    2024年02月07日
    浏览(46)
  • 【算法练习】leetcode算法题合集之二叉树篇

    前序遍历,中序遍历,后序遍历是根据处理根节点的位置来命名的。 树的处理大多用到了递归,递归需要知道终止条件。 前序遍历(中左右) 144.二叉树的前序遍历 中左右,先处理根节点,再处理左子树,再处理右子树 非递归版实现前序遍历 使用栈,当前节点处理完,先塞

    2024年02月01日
    浏览(42)
  • 【算法与数据结构】654、LeetCode最大二叉树

    所有的LeetCode题解索引,可以看这篇文章——【算法和数据结构】LeetCode题解。    思路分析 :【算法与数据结构】106、LeetCode从中序与后序遍历序列构造二叉树这两道题有些类似,相关代码可以互相参考,本题明示了要用递归来做,那么递归三要素不可缺少: 输入参数和返

    2024年02月09日
    浏览(46)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包