二叉树的后序遍历---递归解法(简单难度)

题目概述(简单难度)

给定一个二叉树,返回它的 后序 遍历。 示例:

输入: [1,null,2,3]  
   1
    
     2
    /
   3 

输出: [3,2,1]

进阶: 递归算法很简单,你可以通过迭代算法完成吗? 题目链接:

思路与代码

思路展现

在前面的前序遍历中,我们总结出不定义外部函数的方法更加适用于此题目,所以使用递归更加适用于此题目,来看代码:

代码示例

class Solution {
          
   
    public List<Integer> postorderTraversal(TreeNode root) {
          
   
        List<Integer> list = new ArrayList<>();
        if(root != null) {
          
   
           List<Integer> leftlist = postorderTraversal(root.left);
           list.addAll(leftlist);
           List<Integer> rightlist = postorderTraversal(root.right);
           list.addAll(rightlist);
           list.add(root.val);
       }
        return list;
    }
}

总结

考察对于二叉树后序遍历的理解.

经验分享 程序员 微信小程序 职场和发展