java 二叉树的层序遍历
时间: 2023-11-05 08:56:03 浏览: 91
Java中二叉树的层序遍历可以通过使用队列来实现。具体的步骤如下:
1. 创建一个队列,并将根节点入队。
2. 当队列不为空时,执行以下步骤:
- 弹出队列中的节点,并将节点的值添加到结果列表中。
- 如果节点的左子节点不为空,将左子节点入队。
- 如果节点的右子节点不为空,将右子节点入队。
3. 返回结果列表。
下面是Java代码的实现示例:
```java
public int[] levelOrder(TreeNode root) {
if (root == null) return new int[0];
List<Integer> result = new ArrayList<>();
Queue<TreeNode> queue = new LinkedList<>();
queue.offer(root);
while (!queue.isEmpty()) {
TreeNode node = queue.poll();
result.add(node.val);
if (node.left != null) queue.offer(node.left);
if (node.right != null) queue.offer(node.right);
}
int[] res = new int[result.size()];
for (int i = 0; i < result.size(); i++) {
res[i] = result.get(i);
}
return res;
}
```
阅读全文