?
题意实现二叉树的前序遍历。利用栈实现。
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; } }
?