[刷题]Binary Tree Preorder Traversal

来源:互联网 发布:plc编程培训机构 编辑:程序博客网 时间:2024/06/01 09:56

[LintCode]Binary Tree Preorder Traversal

答案

/** * Definition of TreeNode: * public class TreeNode { *     public int val; *     public TreeNode left, right; *     public TreeNode(int val) { *         this.val = val; *         this.left = this.right = null; *     } * } */public class Solution {    /**     * @param root: The root of binary tree.     * @return: Preorder in ArrayList which contains node values.     */    public ArrayList<Integer> preorderTraversal(TreeNode root) {        // 2015-3-22 DFS        ArrayList<Integer> rst = new ArrayList<>();        if (root == null) {            return rst;        }        // divide        ArrayList<Integer> left = preorderTraversal(root.left);        ArrayList<Integer> right = preorderTraversal(root.right);        // conquer        rst.add(root.val);        rst.addAll(left);        rst.addAll(right);        return rst;    }}



0 0
原创粉丝点击