簡單BinaryTree實現

2021-07-22 01:09:32 字數 1512 閱讀 2731

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...