链接
剑指 Offer 32 - I. 从上到下打印二叉树
二叉树的层序遍历
思路
代码
class Solution {
public int[] levelOrder(TreeNode root)
{
if (root == null)
{
return new int[0];
}
Queue<TreeNode> queue = new LinkedList<>(); //保存结点
List<Integer> list = new ArrayList<>(); //保存 val
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);
}
}
return list.stream().mapToInt(Integer::intValue).toArray();
}
}