滿二叉樹與完全二叉樹【有性質還沒有理解】

滿二叉樹

一顆深度爲k且有2^(k-1)個節點的二叉樹稱爲滿二叉樹

在這裏插入圖片描述

完全二叉樹

當二叉樹的深度爲h時,它的h層節點必須都是連續靠左並不可隔開的(滿二叉樹也符合),並且1~h-1層的結點數都達到最大個數(即1~h-1層爲一個滿二叉樹)。

在這裏插入圖片描述

性質一

所有的葉節點都出現在第k層或者k-1層。

性質二

如果其右子樹的最大層次爲l,那麼其左子樹的最大層次爲l或者l+1

性質三

具有n個節點的完全二叉樹的深度爲[log2n] + 1 ,其中[log2n]表示log2n的整數部分

  • 證明: 假設當前二叉樹的深度爲k,則2^ (k-1) - 1 < n < 2 ^ (k) - 1 —> 2 ^ (k - 1 ) <= n < 2 ^ (k) - 1
  • 取對數得: k - 1 <= log2n < k,因爲k是證書 k = log2n + 1

性質四【怎麼理解不知道】

有N個節點的完全二叉樹各節點如果用順序方式存儲,如數組存儲

  • left = index * 2 + 1
  • right = index * 2 + 2
  • 序數 >= floor(N/2)都是葉子節點

如果對一棵有n個節點的完全二叉樹的節點按層序編號

性質 滿二叉樹 完全二叉樹
高度 k k
第i層節點數 2^(i-1) 1 <= x < 2^(i-1)
總節點數 2^(k) - 1 2^(k-1) <= n< 2 ^ (k) - 1
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章