给你一棵二叉树的根节点
root
,返回其节点值的 后序遍历 。示例 1:
输入:root = [1,null,2,3]
输出:[3,2,1]
解释:
示例 2:
输入:root = [1,2,3,4,5,null,8,null,null,6,7,9]
输出:[4,6,7,5,2,9,8,3,1]
解释:
示例 3:
输入:root = []
输出:[]
示例 4:
输入:root = [1]
输出:[1]
提示:
- 树中节点的数目在范围
[0, 100]
内-100 <= Node.val <= 100
递归
1min
递归方法:
1.确认递归参数和返回值
2.确认终止条件
3.确认递归每一层次之间的逻辑
public List<Integer> postorderTraversal(TreeNode root) {
List result = new ArrayList<>();
process(root,result);
return result;
}
public void process(TreeNode root,List result){
if(root == null) return;
process(root.left,result);
process(root.right,result);
result.add(root.val);
}
}