樹和二叉樹的知識點考前總結

2021-10-23 15:55:26 字數 2818 閱讀 3816

先放一張自己做的思維導圖,當時思路不是太清晰,只能看出來當時學的大概是啥。。。

*1、邏輯結構的一種。

2、樹中包含的基本概念。

①結點、度、層次

②雙親、孩子、兄弟

1、為什麼要研究二叉樹。。

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

所有樹都能轉為唯一對應的二叉樹, 不失一般性。

(二叉樹不是樹。)

2、特殊二叉樹(滿二叉樹完全二叉樹

滿二叉樹:一棵深度為k且有2k-1個結點的二叉樹。(特點:除葉子結點外的結點度都為2)

完全二叉樹:深度為k的,有n個結點的二叉樹,當且僅當其每乙個結點都與深度為k的滿二叉樹中編號從1至n的結點一 一 對應。(特點:只有最後一層葉子不滿且全部集中在左邊)

關係:滿二叉樹必為完全二叉樹,完全二叉樹不一定是滿二叉樹。

3、二叉樹的性質:

① . 在二叉樹的第i層上至多有2(i-1)個結點。

② . 深度為k的二叉樹至多有2k-1個結點。深度為k時至少有_k_個結點。

③ . 葉子結點數 = 度為2的結點數 + 1

④ . 具有n個結點的完全二叉樹的深度必為[log2n]+1([log2n]表示取log2n能取到的的最大整數)

⑤ . 對完全二叉樹,若從上至下、從左至右編號,則編號為i的結點,其左孩子編號必為2i,其右孩子編號必為2i+1;其雙親的編號必為i/2。

4、二叉樹的三種遍歷

前(先)序遍歷:根左右

中序遍歷:左根右

後序遍歷:左右根

注意:以上三個每個子樹也都是按這個來的。

層序遍歷:一層一層的訪問,一層訪問結束再訪問下一層。

遍歷定義:指按某條搜尋路線遍訪每個結點且不重複(又稱周遊)。

遍歷用途:是樹結構插入、刪除、修改、查詢和排序運算的前提,是二叉樹一切運算的基礎和核心。

1、就是之前離散裡學的最優二叉樹,即帶權路徑長度最短的二叉樹。

權值:結點表達出的數值大小,或者變換的表示為概率大小

路徑:根結點到達當前結點的分支數,左分支和右分支具有不同意義

2、哈夫曼樹的構造過程:

① . (統計出每種字元出現的頻率),對結點權值公升序排序,從結點序列中選擇兩個權值最小(兩個最小的實數)的結點,小的放左邊,大的放右邊,建立新的結點,如選擇1,2實數作為結點,則建立的結點的權為3。

② . 從序列中刪除上一步選擇的兩個結點,再選乙個最小的,將新建立的結點加入序列。重複執行以上兩步,最終節點序列中剩餘的乙個結點即為最終的根結點。

3、哈夫曼編碼。

在每個路徑上都添上 0 或 1,規則左0 右1。從根結點數到對應的葉子結點,路徑上的值拼接起來就是葉子結點字母的應該的編碼。

1、將樹轉換為二叉樹:

① . 在每層的所有兄弟結點之間加一連線。

② . 對每個結點,除了保留與其長子的連線外,去掉該結點與其它孩子的連線。

2、將森林轉換為二叉樹:

① . 將森林中的每棵樹變為二叉樹;

② . 因為轉換所得的二叉樹的根結點的右子樹均為空,故可將各二叉樹的根結點視為兄弟從左至右連在一起,就形成了一棵二叉樹。

3、二叉樹轉換為樹:

其實就是是樹轉換為二叉樹的逆過程。

① . 加線。若某結點x的左孩子結點存在,則將這個左孩子的右孩子結點、右孩子的右孩子結點、右孩子的右孩子的右孩子結點…,都作為結點x的孩子。將結點x與這些右孩子結點用線連線起來。

② . 去線。刪除原二叉樹中所有結點與其右孩子結點的連線。

4、二叉樹轉換為森林:

假如一棵二叉樹的根節點有右孩子,則這棵二叉樹能夠轉換為森林,否則將轉換為一棵樹。

① . 從根節點開始,若右孩子存在,則把與右孩子結點的連線刪除。再檢視分離後的二叉樹,若其根節點的右孩子存在,則連線刪除……直到所有這些根節點與右孩子的連線都刪除為止。

② . 將每棵分離後的二叉樹轉換為樹。

樹,二叉樹知識點總結

性質1 樹中的結點數等於所有結點的度數之和加1 性質2 度為m的樹中第i層上最多有m i 1個結點 i 1 性質3 高度h的m次樹最多有 m h 1 m 1 個結點 性質4 具有n個結點的m次樹的最小高度為logm n m 1 1 向上取整 1 樹的遍歷 先根遍歷 若樹不空,則先訪問根節點,然後依次...

二叉樹知識點

樹是一種常用的非線性資料結構,用於描述分支 分層關係。一 基本概念 1 什麼是二叉樹?二叉樹是也是一種樹,乙個節點最多有兩個子樹結構。2 什麼是節點的度?節點的子樹個數,叫做節點的度,所以二叉樹節點的度最大為2。3 什麼是葉子節點?沒有子樹的節點叫葉子節點,葉子節點的度為0。4 什麼是節點的深度?節...

樹和二叉樹知識點彙總

1.樹是一種非線性的資料結構,它是由n個有限結點組成有層次關係的集合.2.樹具有以下特點,可以根據這些特點來判斷乙個資料結構是否是樹 每個結點具有0個或多個子結點 每個子結點只有乙個父結點 沒有前驅的結為根結點 除了根結點外,每個子結點又可以由m棵不相關的子樹組成 樹形結構是以分支關係定義的資料結構...