22从上往下打印二叉树

题目描述

从上往下打印出二叉树的每个节点,同层节点从左至右打印。

思路分析

层次遍历打印结点信息,用辅助队列。

代码实现

public static ArrayList<Integer> printFromTopToBottom(TreeNode root) {
    Queue<TreeNode> queue = new LinkedList<>();
    ArrayList<Integer> arrayList = new ArrayList<>();
    queue.add(root);
    while (!queue.isEmpty()){
        int count = queue.size();
        while (count-->0){
            TreeNode node = queue.poll();
            if(node==null){
                continue;
            }
            arrayList.add(node.val);
            queue.add(node.left);
            queue.add(node.right);
        }
    }
    return arrayList;
}
发布了71 篇原创文章 · 获赞 3 · 访问量 2407

猜你喜欢

转载自blog.csdn.net/qq_34761012/article/details/104369398
今日推荐