题目:leetcode145. 二叉树的后序遍历(递归实现)
描述
给你一棵二叉树的根节点 root ,返回其节点值的 后序遍历 。
思路
使用递归算法实现,首先后序遍历左子树,然后后序遍历右子树,最后输出当前结点值。所有要输出的值保存在result结果集里面。
代码
import java.util.ArrayList;
import java.util.List;
public class Solution {
public List<Integer> postorderTraversal(TreeNode root)
{
if(root==null)
return new ArrayList<>();
List<Integer> result=new ArrayList<>();
postorder(root,result);
return result;
}
private void postorder(TreeNode root, List<Integer> result) {
if(root==null)
return;
postorder(root.left,result);
postorder(root.right,result);
result.add(root.val);
}
}