[Lintcode] 66. Binary Tree Preorder Traversal

来源:互联网 发布:nginx搭建wss环境 编辑:程序博客网 时间:2024/06/05 17:34

给出一棵二叉树,返回其节点值的前序遍历。

public class Solution {    /**     * @param root: The root of binary tree.     * @return: Preorder in ArrayList which contains node values.     */    public List<Integer> preorderTraversal(TreeNode root) {        Stack<TreeNode> stack = new Stack<TreeNode>();        List<Integer> result = new ArrayList<Integer>();                if (root == null) {            return result;        }                stack.push(root);        while (!stack.empty()) {            TreeNode node = stack.pop();            result.add(node.val);            if (node.right != null) {                stack.push(node.right);            }            if (node.left != null) {                stack.push(node.left);            }        }                return result;    }}

原创粉丝点击