Binary Tree Preorder Traversal

来源:互联网 发布:专业淘宝差评师 编辑:程序博客网 时间:2024/06/07 12:41

Given a binary tree, return the preorder traversal of its nodes' values.

For example:

Given binary tree {1,#,2,3},

   1    \     2    /   3
return [1,2,3].

可以用递归也可以用循环来做。循环使用栈来保存节点。

public class Solution {    public List<Integer> preorderTraversal(TreeNode root) {       List<Integer> result=new ArrayList<Integer>();if(root==null)return result;helper(root,result);return result;}private void helper(TreeNode node,List<Integer> result){if(node==null)return;result.add(node.val);if(node.left!=null)helper(node.left,result);if(node.right!=null)helper(node.right,result);}}

0 0
原创粉丝点击