【證明】—— 二叉樹的相關證明
阿新 • • 發佈:2019-01-08
0. 簡單結論
- 對於堆,子樹的最大節點數為 2/3n;(樹的最底層恰好半滿)
- 0 層節點數:
- 1層節點數:
- m-1 層節點數:,一半有左右孩子,,左右孩子也即底部的葉子節點的數量 ;
- 前 m-1 層(排除掉最底層)節點數為 ,前 層,左邊節點右邊節點 ;
1. 數學歸納法
高度為 的二叉樹,葉子結點不多於 。
數學歸納法,證明三部曲:
- ,只有一個根節點,則葉子結點也為此根節點,為 1,不多於
令高度為 ,葉子結點不多於
高度為 時,考慮其左右孩子,則其左右孩子(也即左右子樹),高度不高於 ,則左右孩子葉子節點數也均不高於 ,即左子樹,樹高不高於 ,葉子結點數不高於 ,右子樹,樹高不高於 ,葉子結點數不高於 ,則總的葉子節點數:
2. 二叉堆
- 任意一個正整數 ,均可拆分為 ( 為能取得的最大整數),對於包含 個節點的堆,前 層的節點數為 ,最底層有 個葉子節點,並非整個二叉樹有 個葉子節點;
高度為 的堆中,元素個數最多最少分別是多少?
考慮高度為 和高度為 的滿二叉樹。
- 對於高度為 的滿二叉樹,樹中節點的個數為:(全1二進位制數),
- 高度為 的滿二叉樹,樹中節點個數為:
則高度為 滿二叉樹節點數+1,即