package primDataStructure;
public class treeNode {
//treeNode<T> node=new treeNode<Ts>()
String value;
treeNode leftNode,rightNode;
//static int level;
public treeNode() {
leftNode=null;
rightNode=null;
this.value=null;
//level=0;
}
public void add(String value) {//先序遍歷添加數據,產生一個非平衡樹
if(this.value==null) {
this.value=value;
}
else if(this.leftNode==null) {
this.leftNode=new treeNode();
leftNode.add(value);
}
else if(this.rightNode==null) {
this.rightNode=new treeNode();
rightNode.add(value);
}
else {
this.leftNode.add(value);
}
}
public int getDeep(treeNode node) {//求深度
int n1,n2;
if(node!=null) {
n1=node.getDeep(node.leftNode);
n2=node.getDeep(node.rightNode);
return (n1>n2?n1:n2)+1;
}
return 0;
}
public static void main(String args[]) {
treeNode tree=new treeNode();
//tree.firstCreate(tree);
for(int i=0;i<10;i++) {
tree.add("第"+i+"個值");
}
System.out.println(tree.getDeep(tree));
}
}
JAVA數據結構學習4.1樹的建立和求深度
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.