public class TreeNode {
private int value;
private TreeNode left;
private TreeNode right;
public void setValue(int value) {
this.value = value;
}
public TreeNode() {
}
public TreeNode(int value) {
this.value = value;
}
public void setLeft(TreeNode left) {
this.left = left;
}
public void setRight(TreeNode right) {
this.right = right;
}
@Override
public String toString() {
return "TreeNode{" +
"value=" + value +
", left=" + left +
", right=" + right +
'}';
}
public TreeNode getLeft() {
return left;
}
public TreeNode getRight() {
return right;
}
public int getValue() {
return value;
}
}
import java.util.LinkedList;
import java.util.Queue;
import java.util.Random;
/**
* @author shkstart
* @create --
*/
public class BFSTest {
public static void main(String[] args) {
int number[]=new int[]{12,23,45,14,2,1,25,41,25,1,2,4};
TreeNode tree=new TreeNode(number[0]);
Queue<TreeNode> que=new LinkedList<TreeNode>();
que.offer(tree);
for(int i=1;i<number.length;){
TreeNode in=new TreeNode();
in=que.poll();
TreeNode left=new TreeNode();
TreeNode right=new TreeNode();
in.setLeft(left);
in.setRight(right);
left.setValue(number[i]);
que.offer(left);
if(i+1<number.length){
right.setValue(number[i+1]);
que.offer(right);
}
i+=2;
}
System.out.println(tree);
}
public static void show(TreeNode tree){//广度遍历
Queue<TreeNode> que=new LinkedList<TreeNode>();
que.offer(tree);
for(;!que.isEmpty();){
tree=que.poll();
System.out.println(tree.getValue());
if(tree.getLeft()!=null){
que.offer(tree.getLeft());
}
if(tree.getRight()!=null){
que.offer(tree.getRight());
}
}
}
}