天天看点

LeetCode 94 二叉树中序遍历 递归

给定一个二叉树,返回它的中序 遍历。

示例:

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

输出: [1,3,2]      

递归算法比较简单,难点在于list列表需要定义在外面,或者在内部使用addAll函数,连接子list。代码如下:

class Solution {

   // List<Integer> list=new ArrayList<>();

    public List<Integer> inorderTraversal(TreeNode root) {

        List<Integer> list=new ArrayList<>();

        if(root==null){

            return list;

        }

        list.addAll(inorderTraversal(root.left));

        list.add(root.val);

        list.addAll(inorderTraversal(root.right));

        return list;   

    }

}

附上AC结果图,比较菜,后续添加栈的解法。

LeetCode 94 二叉树中序遍历 递归