0
点赞
收藏
分享

微信扫一扫

【LeetCode】226.翻转二叉树 (同 剑指 Offer 27. 二叉树的镜像)


相似题目:

  1. ​​【LeetCode】572. 另一个树的子树​​
  2. ​​【LeetCode】104. 二叉树的最大深度【简单】​​
  3. ​​【LeetCode】110. 平衡二叉树​​
  4. ​​【LeetCode】297. 二叉树的序列化与反序列化【困难】​​
  5. ​​【LeetCode】二叉树各种遍历大汇总(秒杀前序、中序、后序、层序)递归 & 迭代​​
  6. ​​【LeetCode】235. 二叉搜索树的最近公共祖先​​

1. 题目描述

翻转一棵二叉树。

示例:

输入:

4
/ \
2 7
/ \ / \
1 3 6 9
输出:

4
/ \
7 2
/ \ / \
9 6 3 1

2. 解题代码

# Definition for a binary tree node.
# class TreeNode:
# def __init__(self, x):
# self.val = x
# self.left = None
# self.right = None

class Solution:
def invertTree(self, root: TreeNode) -> TreeNode:
if not root:
return root
root.left, root.right = root.right, root.left # 把根节点的左右孩子翻转
self.invertTree(root.left) # 递归地翻转左孩子的左孩子
self.invertTree(root.right) # 递归地翻转左孩子的右孩子
return


举报

相关推荐

0 条评论