按层遍历二叉树


import java.util.LinkedList;
import java.util.Queue;

/**
* 按层遍历二叉树
*/
public class LevelTraversalBT {

public void levelTraversalBT(Node head) {
if (head == null) {
return;
}
// 用队列实现
Queue<Node> queue = new LinkedList<>();
queue.add(head);
while (!queue.isEmpty()) {
Node node = queue.poll();
System.out.println(node.value);
if (node.left != null) {
queue.add(node.left);
}
if (node.right != null) {
queue.add(node.right);
}
}
}

/**
* 二叉树结构
*/
public class Node {
public int value;

public Node left;

public Node right;

public Node(int value) {
this.value = value;
}
}
}

/* 如有意见或建议,欢迎评论区留言;如发现代码有误,欢迎批评指正 */
原文地址:https://www.cnblogs.com/laydown/p/12848374.html