144. 二叉树的前序遍历

二叉树的前序遍历

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

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

思路+代码+注释:

public List<Integer> preorderTraversal(TreeNode root) {
        /*
        思路:
        前序遍历-根左右
        采用递归遍历树的节点,当节点为null时直接返回,当节点不为null时添加节点的值到res中,然后递归遍历左子节点,递归遍历右子节点
         */
        List<Integer> res=new ArrayList<>();
        preorderTraversal(root,res);
        return res;
    }

    private void preorderTraversal(TreeNode node,List<Integer> res)
    {
        if (node==null)
        {
            return;
        }
        res.add(node.val);
        preorderTraversal(node.left,res);
        preorderTraversal(node.right,res);
    }
上一篇:算法:理解“扩展欧几里得算法”


下一篇:leetcode 144周赛 航班预定统计