二叉树实现层序遍历利用队列Queue来实现,主要根据先入先出来实现,代码如下:
public static void levelOrderTraveral(TreeNode root) {
Queue<TreeNode> queue = new LinkedList<>();
queue.offer(root);
while (!queue.isEmpty()) {
TreeNode treeNode = queue.poll();
System.out.print(treeNode.data + " ");
if (treeNode.leftNode != null) {
queue.offer(treeNode.leftNode);
}
if (treeNode.rightNode != null) {
queue.offer(treeNode.rightNode);
}
}
}
上述实现参考《漫画算法》