QuestionIdeaCode
Question226. 翻转二叉树
Idea二叉树的翻转指的是左孩子和右孩子翻转过来,那么就可以用二叉树的深度优先搜索,对每个节点的左右孩子进行互换
Code# 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: TreeNode) -> TreeNode: ''' 思路:翻转二叉树指的是二叉树左孩子和右孩子互换 那么就可以遍历该树 让其左孩子和右孩子互换 这里采用dfs 前序遍历 ''' def dfs(root): if not root: return root root.left, root.right = root.right, root.left dfs(root.left) dfs(root.right) return root return dfs(root)
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)