package binarytree;
/** * 選擇第乙個元素作為根節點
* 比根節點打的資料儲存在右子數
* 比根節點資料小的儲存在左子樹
* 輸出:中序遍歷
* 左→中→右
* @author ly
* */
public
class testbinarytree
}}package binarytree;
//二叉樹實現類
public
class binarytree
public
void
addnode(node newnode) else
}elseelse}}
private
void
toarraynode()
binarytree.this.retobj[binarytree.this.foot++] = this.data;
if(this.right!= null)}}
//*****************************************
//編寫binarytree的程式
private node root; //任何節點操作都離不開根節點
private
int count; //進行資料統計
private
int foot; //進行標記
private object retobj; //建立陣列用來接收儲存的資料
public
void
add(object obj)
if(this.root == null)elsethis.count++;
}public
intsize()
public object toarray()
this.retobj = new object[this.count];
this.root.toarraynode();
return
this.retobj;
}}package binarytree;
public
class phone implements comparable
public
phone(string brand, double price)
public string getbrand()
public
void
setbrand(string brand)
public
double
getprice()
public
void
setprice(double price)
@override
public
intcompareto(phone o) if(this.price < o.price)return
0; }
}
BinaryTree 二叉樹類的實現
二叉樹結點的抽象資料型別 1 template 2class binarytreenode 3 二叉樹結點函式功能實現 1 template 2 binarytreenode binarytreenode 36 template 7 binarytreenode binarytreenode con...
Go語言實現二叉樹(BinaryTree)
二叉樹的操作原理 取第乙個節點為根節點,比根節點小的數放在根節點的左子樹 左節點 比根節點大的數放在根節點的右子數 右節點 取得的時候按照中序遍歷的方式 左 中 右 實現 如下 節點結構體 type node struct 二叉樹結構體 type binarytree struct 查詢時記錄下標 ...
BinaryTree 遞迴遍歷 建樹 C語言
include include include typedef char eleltype 定義結構體 typedef struct btnode,binarytree 申請結點 btnode buynode 釋放結點 void freenode btnode p 遞迴先序遍歷二叉樹 void pr...