Java-数据结构-二叉树习题(3)-第四题、二叉树的前序遍历

时间:2025-01-27 10:15:11

做了那么多不太好解决的题,总该来点简单的给自己点信心对吧~

???? 思路提示

很简单很简单啦~题目要求的是让我们通过前序遍历的顺序将二叉树的结点val都存入一个List<Integer>中,然后返回这个List~

那么我们只需要创建一个List<Integer>,用ArrayList去实现它。

然后再创建一个方法,采取(先赋值,再走left,再走right)的步骤(前序遍历),通过不断递归调用该方法,并且将遍历到的非null的值添加给List,最后List中的值的顺序就是我们的前序遍历了

???? 代码示例

class Solution {
    public List<Integer> preorderTraversal(TreeNode root) {
        List<Integer> cur = new ArrayList<>();
        preOrder(root,cur);
        return cur;
    }
    public void preOrder(TreeNode root,List<Integer> res) {
        if (root == null) {
            return;
        }
        res.add(root.val);
        preOrder(root.left,res);
        preOrder(root.right,res);
    }
}