第五章樹和二叉樹

2021-06-27 00:38:47 字數 1437 閱讀 6412

樹的邏輯結構

在樹中常常將資料元素稱為結點

任意一棵非空樹滿足以下條件:

(1)有且僅有乙個特定的稱為根的結點

(2)當n>1時,除根結點之外的其餘節點被分成m(m>0)個互不相交的有限集合t1,t2.......tm,其中每個集合又是一棵樹,並稱為根節點的子樹。

樹的定義是遞迴的。

結點的度:某結點所擁有的子樹的個數

樹的度:樹中各結點度的最大值

葉子節點:度為0的結點,也稱為終端結點

分支節點:度不為0的結點,也稱為非終端結點

兄弟節點:具有同乙個雙親的孩子結點        

前序遍歷:

若樹為空,則空操作返回;否則

(1)訪問根節點;

(2)按照從左到右的順序前序遍歷根結點的每一棵子樹。

後序遍歷:

若樹為空,則空操作返回;否則

(1)按照從左到右的順序後序遍歷根結點的每一棵子樹。

(2)訪問根節點;

二叉樹的邏輯結構:

二叉樹的特點:1.每個結點最多有兩棵子樹,所以二叉樹中不存在度大於2的結點;

2,二叉樹是有序的,其次序不能任意顛倒,即使樹中的某個結點只有一棵子樹,也要區分它是左子樹還是右子樹

二叉樹具有5種基本形態:1.空二叉樹  2.只有乙個根節點 3.根節點只有左子樹 4.根結點只有右子樹 5.根節點既有左子樹又有右子樹

滿二叉樹的特點:

1.葉子只能出現在最下一層 2.只有度為0和度為2 的結點

完全二叉樹的特點:1.葉子結點只能出現在最下兩層,且最下層的葉子結點都集中在二叉樹的左側連續的位置。 2.如果有度為1的結點,只可能有乙個,且該結點只有左孩子

前序遍歷:

若二叉樹為空,則空操作返回,否則

(1)訪問根節點

(2)前序遍歷根節點的左子樹

(3)前序遍歷根節點的右子樹

中序遍歷:

若二叉樹為空,則空操作返回,否則

(1)中序遍歷根節點的左子樹

(2)訪問根節點

(3)中序遍歷根節點的右子樹

後序遍歷:

若二叉樹為空,則空操作返回,否則

(1)後序遍歷根節點的左子樹

(2)後序遍歷根節點的右子樹

(3)訪問根節點

哈夫曼樹也稱最優二叉樹。葉子結點的權值是對葉子結點賦予的乙個有意義的數值量

第五章 樹和二叉樹

5.1 樹的邏輯結構 樹的定義 n n 0 個結點的有限集合。當n 0時,稱為空樹 任意一棵非空樹滿足以下條件 有且僅有乙個特定的稱為根的結點 當n 1時,除根結點之外的其餘結點被分成m m 0 個互不相交的有限集合t1,t2,tm,其中每個集合又是一棵樹,並稱為這個根結點的子樹。樹的基本術語 結點...

第五章樹和二叉樹

結點的度 結點所擁有的子樹的個數。樹的度 樹中各結點度的最大值。葉子結點 度為0的結點,也稱為終端結點。分支結點 度不為0的結點,也稱為非終端結點。結點所在層數 根結點的層數為1 對其餘任何結點,若某結點在第k層,則其孩子結點在第k 1層。樹的深度 樹中所有結點的最大層數,也稱高度。層序編號 將樹中...

第五章 樹和二叉樹(5 7)

目錄5.7.3哈夫曼編碼 2.哈夫曼編碼演算法實現 3.檔案的編碼和解碼 哈夫曼 huffman 樹又稱最優樹,是一類帶權路徑長度最短的樹,在實際中有廣泛的用途。哈夫曼樹的定義,涉及路徑 路徑長度 權等概念,下面先給出這些概念的定義,然後再介紹哈夫曼樹。路徑 從乙個結點到另乙個結點之間的分支序列 路...