题目:
我的感悟:
- 用helper内部函数写更好
理解难点:
代码难点:
代码示例:
- 前序
# 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 preorderTraversal(self, root: Optional[TreeNode]) -> List[int]:
res = []
def helper(root):
if not root:return
res.append(root.val)
helper(root.left)
helper(root.right)
helper(root)
return res
- 中序
-
# 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 preorderTraversal(self, root: Optional[TreeNode]) -> List[int]: res = [] def helper(root): if not root:return helper(root.left) res.append(root.val) # 结果放在这里,中序 helper(root.right) helper(root) return res
- 后序
-
# 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 preorderTraversal(self, root: Optional[TreeNode]) -> List[int]: res = [] def helper(root): if not root:return helper(root.left) helper(root.right) res.append(root.val) # 结果放在后面,后序 helper(root) return res