二叉树除了前序遍历、中序遍历、后序遍历之外,还有一种遍历方式,那就是层序遍历,它是将二叉树按照层次进行遍历的一种方法。
首先,需要定义节点类,代码如下:
public class TreeNode {
int value;
TreeNode left;
TreeNode right;
public TreeNode() {
value = 0;
left = right = null;
}
public TreeNode(int value) {
this.value = value;
left = right = null;
}
}
层序遍历
对于代码的实现,我们可以利用队列来实现。
public void leverOrder(TreeNode root){
Queue<TreeNode> queue = new LinkedList<>();
if(root != null) {
queue.offer(root);
}
while(!queue.isEmpty()) {
//获取队头元素
TreeNode topNode = queue.poll();
System.out.print(topNode.value+" ");
//入队孩子节点
if(topNode.left != null) {
queue.offer(topNode.left);
}
if(topNode.right != null) {
queue.offer(topNode.right);
}
}
}
以上就是介绍的二叉树的层序遍历的代码实现。