144. 二叉树的前序遍历
题目:给你二叉树的根节点 root ,返回它节点值的 前序 遍历。
解法:迭代
思路:模拟
代码:
/**
-
Definition for a binary tree node.
-
public class TreeNode {
-
int val; -
TreeNode left; -
TreeNode right; -
TreeNode() {} -
TreeNode(int val) { this.val = val; } -
TreeNode(int val, TreeNode left, TreeNode right) { -
this.val = val; -
this.left = left; -
this.right = right; -
} -
}
*/
class Solution {
public ListpreorderTraversal(TreeNode root) {
Listres = new ArrayList ();
Stackstack = new Stack ();
if(root==null){
return res;
}
stack.push(root);
while(!stack.isEmpty()){
TreeNode popNode = stack.pop();
res.add(popNode.val);
if(popNode.right!=null){
stack.push(popNode.right);
}
if(popNode.left!=null){
stack.push(popNode.left);
}
}
return res;}
}

浙公网安备 33010602011771号