在理解完全二叉樹之前,首先要弄清楚完全二叉樹和滿二叉樹的區別。
1.什麼是滿二叉樹?
(1)滿二叉樹所有分支節點都有左孩子節點和右孩子節點;(只有度為0和度為2的節點)
(2)滿二叉樹的所有葉子節點都在最下一層。
2.什麼是完全二叉樹?
(1)葉子節點只在層次最大的兩層出現;
(2)最下面一層的葉子節點都依次排列在該層最左邊的位置上;
(3)如果有度為1的節點,只可能有乙個,且該節點只有左孩子而無右孩子;
(4)按層序編號後,一旦出現某個節點為葉子節點或者只有左孩子,則編號大於它的節點均為葉子節點。
可見,滿二叉樹是完全二叉樹的一種特例。
關於完全二叉樹還有乙個特點(5)當節點總數為奇數時,度為1的節點個數=0,當節點總數為偶數時,度為1的節點個數=1
3.什麼是線索二叉樹?
引入線索二叉樹是為了加快查詢結點前驅和後繼的速度。
線索二叉樹是加上線索後的鍊錶結構,它是二叉樹在計算機內部的一種儲存結構,是一種物理結構。
對於具有n個節點的二叉樹,採用二叉鏈儲存結構時,每個節點有兩個指標域,總共有2n個指標域,又由於這n個節點中只有樹根節點沒有被指,所以有2n-(n-1)=n+1個空鏈域。
4.什麼是二叉排序樹?
左子樹上所有結點的關鍵字均小於根結點的關鍵字;
右子樹上所有結點的關鍵字均大於根結點的關鍵字;
同時,左右子樹又各是一棵二叉排序樹。
5.二叉樹的儲存結構
依據二叉樹的性質,完全二叉樹和滿二叉樹採用順序儲存比較合適;
但由於順序儲存對空間利用率較低,因此,一般二叉樹都採用鏈式儲存結構
6.要構造一棵樹,必須知道它的中序遍歷
1、前序+中序
2、後序+中序
3、層序+中序
知道以上3種情況的任意一種都可以構造出該樹
關於資料結構之線段樹
這幾天都一直在看關於線段樹的題目還有題解,還有做題!以前也知道有線段樹這個東西,但是那時沒有好好的看,就看了個簡單的皮毛!所以現在又拿出來好好看看!一開始看,一直看題解,還有就是模仿,首先看一遍,初步了解一下,然後就是按著別人的題解再抄著寫一遍直到通過測試,當然不是直接對著乙個乙個的copy上,然後...
關於資料結構
定義,性點 二叉樹是一種樹形結構,其特點是每個結點至多只有兩顆子樹,並且二叉樹的子樹有左右之分。非空二叉樹葉子結點數等於度為2的結點的個數加1,即n0 n2 1 非空二叉樹上第k層上至多有2 k 1 個結點。高度為h的二叉樹至多有2 h 1個結點 樹的最大度為2 樹的高度 從所有葉節點開始數高度到根...
資料結構 樹
樹的概念 1.家族樹 在現實生活中,有入如下血統關係的家族可用樹形圖表示 張源有三個孩子張明 張亮和張麗 張明有兩個孩子張林和張維 張亮有三個孩子張平 張華和張群 張平有兩個孩子張晶和張磊。以上表示很像一棵倒畫的樹。其中 樹根 是張源,樹的 分支點 是張明 張亮和張平,該家族的其餘成員均是 樹葉 而...