二叉樹是一種非常重要的資料結構,接下來看看如何用**來實現二叉樹,以及二叉樹的插入和遍歷。
public
class
node
public
void
add(
int s)
elseif(
(int
)this
.value > s)
//將s插入到本節點的左子樹
leftnode.
add(s);}
else
rightnode.
add(s);}
}
中序遍歷的**實現
public arraylist
zhongxu()
//左子樹遍歷完後遍歷根節點
list.
add(
this
.value)
;//最後對右子樹進行中序遍歷
if(null != rightnode)
return list;
}
二叉樹三種遍歷的基本思想是一樣的,另外兩種不再給出,下面是插入以及中序遍歷的測試結果
二叉樹及二叉樹的遍歷
二叉樹的定義 樹的度為2的樹。二叉樹的遞迴定義 二叉樹或者是一棵空樹,或者是一棵由乙個根結點和兩棵互不相交的左子樹和右子樹所組成的非空樹,而左右子樹又都是一棵二叉樹。1.第i層上至多有2的i 1次方個結點。2.深度為h的二叉樹至多有2的h次方減1個結點。3.每一層都滿的二叉樹稱為滿二叉樹,只在最後一...
二叉樹的遍歷方式及實現
若樹為空,則空操作返回。否則,先訪問根節點,然後前序遍歷左子樹,再前序遍歷右子樹。中 左 右 實現 遞迴 void preorder node node 實現 非遞迴 void preorder1 node node std stacknstack nstack.push node while ns...
Python實現二叉樹及遍歷方法
樹是資料結構中非常重要的一種,主要的用途是用來提高查詢效率,對於要重複查詢的情況效果更佳,如二叉排序樹 fp 樹。另外可以用來提高編碼效率,如哈弗曼樹 樹的構造 遞迴實現先序遍歷 中序遍歷 後序遍歷 堆疊實現先序遍歷 中序遍歷 後序遍歷 佇列實現層次遍歷 coding utf 8 class nod...