思路也很简单,就是后续遍历的同时把所有的左右节点换一下位置就 ok. 代码如下:

1
2
3
4
5
6
7
8
9
class Solution:
def invertTree(self, root: Optional[TreeNode]) -> Optional[TreeNode]:
if root is None:
return
left = self.invertTree(root.left)
right = self.invertTree(root.right)
root.left = right
root.right = left
return root