0
我嘗試通過BFS(寬度優先搜索)打印存儲在二叉樹內的數據時遇到了一些問題,所以,這是我的代碼:如何使用以下代碼在二叉樹中實現BFS?
BTree類僅用於插入數據,允許BTNode類執行遞歸過程。
public class BTree {
BTNode root;
public void insertAtTree(int data){
if (root == null) root = new BTNode(data);
else root.insertAtTree(data);
}
}
類BTNode遞歸構造樹並打印每個DFS表單。
public class BTNode {
int data;
BTNode right;
BTNode left;
public BTNode(int data){
this.data = data;
}
public void insertAtTree(int data){
if (data <= this.data){
if (left == null) left = new BTNode(data);
else left.insertAtTree(data);
}
else{
if(right == null) right = new BTNode(data);
else right.insertAtTree(data);
}
}
public void printInorden(){
if (left != null) left.printInorden();
System.out.print(data+" ");
if (right != null) right.printInorden();
}
public void printPreorden(){
System.out.print(data+" ");
if (left != null) left.printPreorden();
if (right != null) right.printPreorden();
}
public void printPostorden(){
if (left != null) left.printPostorden();
if (right != null) right.printPostorden();
System.out.print(data+" ");
}
}
感謝您的幫助!
當你說你「遇到一些問題?」時會發生什麼? – Foggzie 2014-09-27 00:19:56