LeetCode热题100-翻转二叉树

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

示例 1:

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

思路

  1. 遇到空树直接退出
  2. 先交换当前节点左右孩子
  3. 再递归翻转左子树、递归翻转右子树
  4. 从上到下逐层全部翻转
python 复制代码
class Solution:
    def invertTree(self, root: Optional[TreeNode]) -> Optional[TreeNode]:
        if not root:
            return None
        root.left, root.right = root.right, root.left
        self.invertTree(root.left)
        self.invertTree(root.right)
        return root
相关推荐
玖釉-8 小时前
编辑距离(Edit Distance)——从字符串相似度到动态规划经典模型
算法·leetcode·动态规划
c238569 小时前
c/c++中的二叉树进阶
c语言·c++·算法
吴可可1239 小时前
Win7下C#开发AutoCAD首选版本
算法
Halo_tjn9 小时前
反射与设计模式2
java·开发语言·算法
_日拱一卒9 小时前
LeetCode:46全排列
算法·leetcode·职场和发展
剑挑星河月10 小时前
31.下一个排列
java·算法·leetcode
凌波粒10 小时前
LeetCode--98.验证二叉搜索树(二叉树)
算法·leetcode·职场和发展
Misnearch10 小时前
3635. 最早完成陆地和水上游乐设施的时间II
leetcode·贪心·排序
Kurisu57510 小时前
深度拆解:从令牌桶到滑动窗口,高并发系统限流算法的数学本质与边界
java·网络·算法
哈泽尔都10 小时前
运动控制教学——5分钟学会力控算法(阻抗/导纳/力位混合)
c++·python·算法·决策树·贪心算法·机器人·gpu算力