树的遍历:

给定一个二叉树,返回他的前序遍历;
class Solution {
public List preorderTraversal(TreeNode root) {
ArrayList res = new ArrayList();//定义一个整数res
ArrayList p = new ArrayList(); //定义一个节点p
while (root != null || p.size() != 0){
res.add(root.val);
if (root.right != null)
p.add(root.right);
root = root.left;
if (root == null && p.size() != 0){
root = p.get(p.size()-1);
p.remove(p.size()-1);
}
}
return res;
}
}

猜你喜欢

转载自blog.csdn.net/zhangpupu320/article/details/89059024