import java.util.*; /** public class TreeNode { int val = 0; TreeNode left = null; TreeNode right = null;
public TreeNode(int val) {
this.val = val;
}
} */
public class Solution {
public ArrayList<Integer> PrintFromTopToBottom(TreeNode root) {
//很明显这是广度优先遍历,没什么可说的
if(root == null){
return new ArrayList();
}
Queue<TreeNode> queue = new LinkedList<TreeNode>();
queue.add(root);
ArrayList<Integer> resList = new ArrayList<Integer>();
while(!queue.isEmpty()){
TreeNode tmpNode = queue.poll();
resList.add(tmpNode.val);
if(tmpNode.left != null){
queue.offer(tmpNode.left);
}
if(tmpNode.right != null){
queue.offer(tmpNode.right);
}
}
return resList;
}
}