面试150 翻转二叉树
思路
采用先序遍历,可以通过新建根节点node,将原来root的右子树连到去node的左子树中,root的左子树连到去node的右子树中。
# 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]:#先序遍历,遍历整颗树def inverse(node):if node==None:return Noneroot=TreeNode(node.val)root.left=inverse(node.right)root.right=inverse(node.left)return rootreturn inverse(root)