算法刷题Day7: 二叉树前中后遍历
前序传送门
中序传送门
后序传送门
思路
用递归打一套组合拳
只是访问节点值的位置不一样,其他都一样
# 基本框架
def Traversal(root):
if root == None:
return
print(root.val) # 这一行表示访问节点值,前序则先访问,中序则放中间访问,后序则放最后访问。
Traversal(root.left)
Traversal(root.right)
推荐!! labuladong的博文,写的很详细传送门
代码
class Solution:
# 前序遍历
def preorderTraversal(self , root: TreeNode) -> List[int]:
result = []
def Traversal(root):
if root == None:
return
result.append(root.val)
Traversal(root.left)
Traversal(root.right)
Traversal(root)
return result
#中序遍历
def inorderTraversal(self, root: TreeNode) -> List[int]:
# write code here
result = []
def Traversal(root):
if root == None:
return
Traversal(root.left)
result.append(root.val)
Traversal(root.right)
Traversal(root)
return result
# 后序遍历
def postorderTraversal(self, root: TreeNode) -> List[int]:
# write code here
result = []
def Traversal(root):
if root == None:
return
Traversal(root.left)
Traversal(root.right)
result.append(root.val)
Traversal(root)
return result
今天让我水一天吧,凭着手指的记忆,脑子都没怎么动,就三行代码,也不用动脑子吧嘿嘿嘿。
推荐一首歌ROSE的 number one girl。女孩加油!敏感脆弱不代表你不好,别人的评价也只是别人的主观想法,不要再被过去的恶魔继续缠绕自己,快把它打走!你可以的!You are the number one girl in my eyes! Come on!