資料結構學習4 樹(一)

2021-07-05 09:22:53 字數 1131 閱讀 8651

非線性結構,乙個直接前驅,但可能有多個直接後繼(1:n)

樹的定義具有遞迴性,即樹中還有樹

樹的度所有結點度中的最大值(max

樹的深度指所有結點中最大的層數(max

圖形表示法

廣義表表示法

左孩子-右兄弟表示法

雙親孩子表示法

二叉樹的結構最簡單,規律性最強

可以證明,所有樹都能轉為唯一對應的二叉樹,不失一般性

定義:是n(n≥0)個結點的有限集合,由乙個根結點以及兩棵互不相交的、分別稱為左子樹和右子樹的二叉樹組成

二叉樹性質

性質1: 在二叉樹的第i層上至多有2i-1個結點(i>0)

性質2: 深度為k的二叉樹至多有2k-1個結點(k>0)

性質3: 對於任何一棵二叉樹,若2度的結點數有n2個,則葉子數(n0)必定為n2+1 (即n0=n2+1)

滿二叉樹:一棵深度為k 且有2k

-1個結點的二叉樹。

(特點:每層都「充滿」了結點)

完全二叉樹:深度為k 的,有n個結點的二叉樹,當且僅當其每乙個結點都與深度為k 的滿二叉樹中編號從1至n的結點一一對應。

性質4: 具有n個結點的完全二叉樹的深度必為ëlog2nû+1

性質5: 對完全二叉樹,若從上至下、從左至右編號,則編號為

i 的結點,其左孩子編號必為

2i,其右孩子編號必為

2i+1;其雙親的編號必為

i/2(

i=1 時為根,除外)

資料結構學習 樹

樹結構是二叉樹的擴充套件,二叉樹在乙個節點上只有兩個子節點,而樹結構在乙個節點上不只有兩個,可以有n個,n大於等於0,更具有一般意義。二叉樹的概念同樣適用於樹,如完全數,滿樹等,此外還有 有序樹 結點的各子樹從左到右是有次序的,即若交換各子樹相對位置會構成不同的樹。無序樹 結點的各子樹從左到右是無次...

資料結構學習 樹

樹是n個結點的有限集合。n 0時稱為空樹,在任意一棵非空樹中 1 有且僅有乙個特定的稱為根的結點。2 當n 1時,其餘結點可以分為m個互不相交的有限集合,其中每乙個集合本身又是一棵樹。在此,我們主要來學習二叉樹的應用。結點擁有的子樹數稱為結點的度。度為0的結點稱為葉子結點或者終端結點。度不為0的結點...

《資料結構》學習筆記(4)

include using namespace std c 中有兩種函式 常規函式和成員函式 定義都包括四個部分 函式名,形式參數列,返回型別和函式體。引數傳遞的兩種方式 傳值 預設的引數傳遞方式 引用型別。使用引用方式將大大節省傳遞引數時間,並可節省儲存引數物件的副本空間。int squareby...