1 樹的定義
由乙個或多個(n≥0)節點組成的有限集合t,且僅有乙個節點稱為根(root),當n> 1時,其餘節點分為m(m≥0)個互不相交的有限集合t1,t2,…,tm。每個集合本身又是一棵樹,被稱作這個根的子樹。樹的定義具有遞迴性,即樹中還有樹。
2 與樹有關的術語
根:即根節點(沒有前驅)
葉子:即終端節點(沒有後繼)
森林:指m棵互不相交的樹的集合(例如沒有根節點的子樹)
有序樹:節點各子樹從左至右有序,不能互換(左為第一)
無序樹:節點各子樹可互換位置
雙親:即上層的那個節點(直接前驅parent)
孩子:即下層結點的子樹(直接後繼child)
兄弟:同一雙親下的同層節點(孩子之間互稱兄弟)sibling
堂兄弟:雙親位於同一層次的節點(非同一雙親)cousin
祖先:從根到該結點所經分支的所有節點
子孫:該節點下層子樹中的任一節點
結點:樹的資料元素
節點的度:節點掛接的子樹數(有幾個直接後繼就是幾度)
節點的層次:從跟到該節點的層數(根節點算第一層)
終端節點:度為0的節點,葉子節點
分支節點:除樹根以外的節點(內部節點)
樹的度:所有節點度中的最大值(max)
樹的深度:所有節點中最大的層數(max)
3 樹的表示方法
(1)圖形表示法
(2)巢狀集合表示法
廣義表示法(集合表示法):(a(b(e(k,l),f),c(g),d(h(m),i,j)))
(5)左孩子右兄弟表示法
4 樹的邏輯結構
(特點):一對多(1:n),有多個直接後繼(如家譜樹、目錄樹等等),但只有乙個根節點,且子樹之間互不相交。
5 樹的儲存結構
樹是非線性結構,仍然有順序儲存和鏈式儲存等方式。
樹的順序儲存方案:從上至下、從左至右將樹的節點依次存入記憶體。
重大缺陷:復原困難(不能唯一復原就沒有實用價值)
樹的鏈式儲存方案:乙個前驅指標,n個後繼指標。
資料結構之 樹
1.雙親表示法 下標 資料 parentid 2.孩子表示法 data child1 child2 child3 3.雙親孩子表示法 下標 parentid firstchildid secondchildid 節點 下標 next 頁的話next應該是null 4.孩子兄弟表示法 data 第一次...
資料結構之樹
一 樹的基本概念 樹 tree 是元素的集合,樹有多個節點可以儲存元素 二 二叉樹 每個節點最多有兩個子節點的樹稱為二叉樹 常用來做二分查詢 binary search 等 三 b樹 即二叉搜尋樹 binary search tree 是一種特殊形態的二叉樹 1 所有節點最多擁有2個子節點 2 所有...
資料結構之樹
樹是節點的有限集合.度 a的度是3 b的度是2 d的度是2 c的度為0 當前節點的直接分支 葉子 終端節點就是葉子 e f g h c 根 非終端節點就是根 a b d 有序樹 如果e f不可以隨意換順序 就是有序樹 無序樹 如果 e f可以隨意換順序而且不影響邏輯 祖先 對e來說 b,a都是祖先 ...