22.从上往下打印二叉树

    xiaoxiao2021-03-25  90

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

    思路:即层次遍历二叉树;

    import java.util.ArrayList; import java.util.LinkedList; /* 层次遍历二叉树,首先,使用一个队列来储存树的根节点,然后判断如果队列不为空,则记录当前节点的值,然后在出队的同时,将该节点的左右节点一次加入队列,直到队列为空,则退出循环。 */ public class Solution { public ArrayList<Integer> PrintFromTopToBottom(TreeNode root) { ArrayList<Integer> list = new ArrayList<Integer>(); LinkedList<TreeNode> queue = new LinkedList<TreeNode>(); if (root == null) return null; queue.add(root); while (!queue.isEmpty()){ TreeNode node = queue.poll(); list.add(node.val); if (node.left != null) queue.add(node.left); if (node.right != null) queue.add(node.right); } } }
    转载请注明原文地址: https://ju.6miu.com/read-16239.html

    最新回复(0)