要求
翻转一棵二叉树。
示例:
输入:
4
/ \
2 7
/ \ / \
1 3 6 9
输出:
4
/ \
7 2
/ \ / \
9 6 3 1
详解代码
class TreeNode:
def __init__(self, val=0, left=None, right=None):
self.val = val
self.left = left
self.right = right
class Solution:
def invertTree(self, root: TreeNode) -> TreeNode:
if not root:
return root
left = root.left
right = root.right
root.right = self.invertTree(left)
root.left = self.invertTree(right)
return root
解题思路:直接递归,我们需要将左右节点保存下来,在反转中进行使用。