什么是按层遍历
二叉树的按层遍历,也称为前序遍历或线性遍历,是一种基本的遍历二叉树的方式。它按照从上到下、从左到右的顺序遍历每一层节点。
具体来说,按层遍历的过程如下:
首先访问根节点。
然后递归地访问每一层的左子树和右子树。对于每一层,我们需要先访问其左子树,然后访问其右子树。这个过程可以用递归实现,也可以使用栈来辅助实现。
先定义一个二叉树
public class Node {
public int value;
public Node left;
public Node right;
public Node(int v) {
value = v;
}
}
用Java 代码实现按层遍历
public static void level(Node head) {
if (head == null) {
return;
}
Queue<Node> queue = new LinkedList<>();
//根据先进先出的特性,不断进行遍历就行
queue.add(head);
while (!queue.isEmpty()) {
Node cur = queue.poll();
System.out.println(cur.value);
if (cur.left != null) {
queue.add(cur.left);
}
if (cur.right != null) {
queue.add(cur.right);
}
}
}