www

导航

从上往下打印二叉树

public ArrayList<Integer> PrintFromTopToBottom(TreeNode root) {
    ArrayList<Integer> ret = new ArrayList<>();
    if(root==null) return ret;
    Queue<TreeNode> queue = new LinkedList<>();
    queue.offer(root);
    while(queue.size()>0){
        int len=queue.size();
        for(int i=0; i<len; i++){
            TreeNode temp = queue.poll();
            ret.add(temp.val);
            if(temp.left!=null) queue.offer(temp.left);
            if(temp.right!=null) queue.offer(temp.right);
        }
    }
    return ret;
}

 

posted on 2019-02-25 23:20  www_practice  阅读(129)  评论(0编辑  收藏  举报