给你一棵二叉树的根节点 root ,翻转这棵二叉树,并返回其根节点。
分析
- 这个判断当不为空时,进行左右交换后返回root,为空时直接返回
# Definition for a binary tree node.
# 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: Optional[TreeNode]) -> Optional[TreeNode]:
if root:
# 陷阱1,需要同时进行,不然就会出现root.left或者root.right重复利用的问题
root.left, root.right = self.invertTree(root.right), self.invertTree(root.left)
return root