package java2019;
import java.util.ArrayList;
import java.util.LinkedList;
public class Demo20 {
public ArrayList<Integer> PrinntFromTopBottom(TreeNode root){
ArrayList<Integer> list = new ArrayList<Integer>();
LinkedList<TreeNode> queue = new LinkedList<TreeNode>();
if(root == null)
return list;
queue.add(root);
while(queue.size()!=0){
TreeNode temp = queue.remove(0);
if(temp.left!=null){
queue.add(temp.left);
}
if(temp.right!=null){
queue.add(temp.right);
}
list.add(temp.val);
}
return list;
}
public static void main(String[] args) {
TreeNode root = new TreeNode(1);
TreeNode n1 = new TreeNode(2);
TreeNode n2 = new TreeNode(3);
TreeNode n3 = new TreeNode(4);
TreeNode n4 = new TreeNode(5);
root.left=n1;
root.right=n2;
n2.left=n3;
n1.right=n4;
Demo20 d20 = new Demo20();
ArrayList<Integer> list = d20.PrinntFromTopBottom(root);
for(int i=0;i<list.size();i++){
System.out.println(list.get(i));
}
}
}