Binary Tree Preorder Traversal

2015-07-20 17:46:24 · 作者: · 浏览: 4

?

题意实现二叉树的前序遍历。利用栈实现。

public class Solution {
       public List
  
    preorderTraversal(TreeNode root) {
    	List
   
     ans = new ArrayList<>(); TreeNode p = root; Stack
    
      st = new Stack
     
      (); while(p!=null || st.size()!=0){ while(p!=null){ ans.add(p.val); st.push(p); p= p.left; } if(st.size()!=0){ p = st.peek(); st.pop(); p = p.right; } } return ans; } }
     
    
   
  

?