資料結構之樹 初識樹

2021-08-01 05:24:00 字數 1459 閱讀 4490

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都是祖先 ...