import java.util.LinkedList;
import java.util.Queue;
public class Node {
public int value;
public Node left;
public Node right;
public Node(int data){
this.value=data;
}
//获取一个图的宽度优先遍历
public static void w(Node head){
if(head == null) return;
Queue<Node> queue = new LinkedList<>();
queue.add(head);
while(!queue.isEmpty()){
Node cur= queue.poll();
System.out.print (cur.value+" ");
if(cur.left!=null){
queue.add(cur.left);
}
if(cur.right!=null){
queue.add(cur.right);
}
}
}
public static void main(String[] args) {
Node head = new Node(1);
head.left = new Node(2);
head.right = new Node(3);
head.left.left = new Node(4);
head.right.left = new Node(5);
head.right.right = new Node(6);
head.left.left.right = new Node(7);
w(head);
}
}
结果: 1 2 3 4 5 6 7
二叉树宽度优先遍历
最新推荐文章于 2023-01-02 23:00:55 发布