# Definition for a binary tree node.
class TreeNode:
def __init__(self, x):
self.val = x
self.left = None
self.right = None
# 后序遍历,先遍历左子树,在遍历右子树,在遍历根节点。
from typing import List
class Solution:
def postorderTraversal(self, root: TreeNode) -> List[int]:
# 首先定义一个数组,用于接收遍历二叉树遍历的节点。
self.num_list = []
self.dfs(root)
return self.num_list
def dfs(self,root):
# 首先判断当前节点是否为空
if not root:
return
# 先去遍历左子树,
self.dfs(root.left)
# 然后遍历右子树
self.dfs(root.right)
# 最后把根节点添加进入
self.num_list.append(root.val)