二叉樹的基礎知識

2021-07-12 05:34:28 字數 1698 閱讀 3244

為何要重點研究結點最多只有兩個 「叉」 的樹? 

二叉樹的結構最簡單,規律性最強; 可以證明,所有樹都能轉為唯一對應的二叉樹。

二叉樹的定義

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

邏輯結構:  一對二(1:2)  

基本特徵: ① 每個結點最多只有兩棵子樹(不存在度大於2的結點); ② 左子樹和右子樹次序不能顛倒(有序樹)。 

基本形態:

二叉樹的儲存結構

一、順序儲存結構 按二叉樹的結點「自上而下、從左至右」編號,用一組連續的儲存單元儲存。

問:順序儲存後能否復原成唯一對應的二叉樹形狀? 答:若是完全/滿二叉樹則可以做到唯一復原。(使用性質5 )而且有規律:下標值為i的雙親,其左孩子的下標值必為2i,其右孩子的下標值必為2i+1(即性質5)例如,對應[2]的兩個孩子必為[4]和[5],即b的左孩子必是d,右孩子必為e。

討論:不是完全二叉樹怎麼辦?

答:一律轉為完全二叉樹! 方法很簡單,將各層空缺處統統補上「虛結點」,其內容為空。

二、鏈式儲存結構

用二叉鍊錶即可方便表示。

一般從根結點開始儲存。 (相應地,訪問樹中結點時也只能從根開始)

注:如果需要倒查某結點的雙親,可以再增加乙個雙親域(直接前趨)指標,將二叉鍊錶變成三叉鍊錶。

二叉樹結點資料型別定義: 

滿二叉樹:一棵深度為k 且有2k -1個結點的二叉樹。(特點:每層都「充滿」了結點)

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

完全二叉樹的特點就是,只有最後一層葉子不滿,且全部集中在左邊。這其實是順序二叉樹的含義。在圖論概念中的「完全二叉樹」是指n1=0的情況。

它們在順序儲存方式下可以復原!

二叉樹的基礎知識

1 二叉樹的定義 深度,節點層數,高度,路徑,葉節點,分支節點,根節點,父節點,左節點,右節點,兄弟節點,祖先節點,子孫節點,左子樹,右子樹。3 二叉樹的性質 性質1 二叉樹第i層上的結點數目最多為2i 1 i 1 性質2 深度為k的二叉樹至多有2k 1個結點 k 1 性質3 包含n個結點的二叉樹的...

二叉樹基礎知識總結

題外話一 樹的定義 樹是一種資料結構,它是由n n 1 個有限結點組成乙個具有層次關係的集合。樹具有的特點有 1 每個結點有零個或多個子結點 2 沒有父節點的結點稱為根節點 3 每乙個非根結點有且只有乙個父節點 4 除了根結點外,每個子結點可以分為多個不相交的子樹。樹的基本術語有 若乙個結點有子樹,...

二叉樹基礎知識總結

一 樹的定義 樹是一種資料結構,它是由n n 1 個有限結點組成乙個具有層次關係的集合。樹具有的特點有 1 每個結點有零個或多個子結點 2 沒有父節點的結點稱為根節點 3 每乙個非根結點有且只有乙個父節點 4 除了根結點外,每個子結點可以分為多個不相交的子樹。樹的基本術語有 若乙個結點有子樹,那麼該...