經過線性表(包括幾種特殊的線性表)的學習,對資料的儲存和處理已經有了初步認識,關於樹的邏輯結構學習有總結如下:
(一)樹的定義(採用遞迴方法)
樹:n(n≥0)個結點的有限集合。(當n=0時,稱為空樹)
任意一棵非空樹滿足以下條件:
1、有且僅有乙個特定的稱為根的結點;
2、當n>1時,除根結點之外的其餘結點被分成m(m>0)個互不相交的有限集合t1,t2,… ,tm,其中每個集合又是一棵樹,並稱為這個根結點的子樹。
(二)樹的基本術語
1、結點的度:結點所擁有的子樹的個數。
2、樹的度:樹中各結點度的最大值。
3、葉子結點:度為0的結點,也稱為終端結點。
4、分支結點:度不為0的結點,也稱為非終端結點。
5、孩子、雙親:樹中某結點子樹的根結點稱為這個結點的孩子結點,這個結點稱為它孩子結點的雙親結點;(祖先與子孫的概念不再贅述)
6、兄弟:具有同乙個雙親的孩子結點互稱為兄弟。
7、路徑:如果樹的結點序列n1, n2, …, nk有如下關係:結點ni是ni+1的雙親(1<=itemplate
<
class
t>
struct pnode
;(七)孩子兄弟表示法
data:資料域,儲存該結點的資料資訊;
firstchild:指標域,指向該結點第乙個孩子;
rightsib:指標域,指向該結點的右兄弟結點。
template
<
class
t>
struct tnode
;
資料結構筆記 樹
2017.12.22 1.順序查詢 a 建立哨兵 2.二分法查詢 binary search a 有序連續儲存在陣列 b 邊界錯位 if left right 查詢失敗 c 時間複雜度logn 1.判定樹上每個結點需要查詢次數剛好為該結點所在層數 2.查詢成功時查詢次數不會超過判定樹的深度 3.as...
資料結構筆記 樹
一 樹的定義樹 n n 0 個結點的有限集合。當n 0時,稱為空樹 任意一棵非空樹滿足以下條件 有且僅有乙個特定的稱為 根的結點 當n 1 時,除根結點之外的其餘結點被分成m m 0 個 互不相交 的有限集合t1 t2,tm 其中每個集合又是一棵樹,並稱為這個根結點的子樹。樹的定義是採用遞迴方法。二...
資料結構筆記8 樹
樹的定義 在樹中通常將資料元素成為結點。樹 n n 0 個結點的有限集合。當n 0時,稱為空樹。任意一棵非空樹滿足以下條件 有且僅有乙個特定的稱為根的結點 當n 1時,除根結點之外的其餘結點被分成m m 0 個互不相交的有限集合t1,t2,tm,其中每個集合又是一棵樹,並稱為這個根結點的子樹。樹的基...