二叉樹的性質

ACyming發表於2024-08-19

性質1

\(n\) 二叉樹的第 \(i\) 層上最多有 \(2^{i-1}\) 個節點。(\(i \ge 1\))
提問:第 \(i\) 層上至少\(1\) 個節點。

性質2

深度為 \(h\) 的二叉樹最多有 \(2^h-1\) 個節點。(\(h \ge 1\))
提問:一顆深度為 \(k\) 且有 \(2^k-1\) 個節點的二叉樹稱為滿二叉樹
提問:深度為 \(k\)至少\(k\) 個節點(形成一條鏈)。

性質3

對於任何一顆二叉樹,如果其葉子節點數為 \(n_0\),度為 \(2\) 的節點數為 \(n_2\),則一定滿足:\(n_0 = n_2+1\)

證明:
\(邊數=點數-1\)
\(邊數=度為二的節點(對應兩條邊 縮寫為 n_1)* 2 + 度為一的節點個數(對應一條邊 縮寫為 n_2) * 1\)
\(n = n_2*2+n_1*1+1 = n_0+n_1n+n_2\)\(n\) 表示點一共的數量)
進行移項)
得出:\(n=n_2+1=n_0\)
一顆完全二叉樹有 \(5000\) 個節點,可以計算出其葉子節點的數量是 \(2500\)
RT,\(n_1=1\)(5000是奇數,於是有一個度為 \(1\) 的節點。

\[n_0+n_1+n_2=n_0+1+n_2=n_0+1+n_0-1\\ =2n_0 = 5000 2n_0=2500 \]

性質4

具有 \(n\) 個節點的完全二叉樹的深度為 $\lfloor \log_2 n \rfloor +1 $ 。
證明:

\[2^{k-1}-1 \le n \le 2^k-1\\ (比上一層多,當前這層少)\\ 2^{k-1} \le n < 2^k\\ k-1 \le \log_2 n < k\\ 所以:\lfloor \log_2 n \rfloor +1 \]

性質5

對於一顆有 \(n\) 個節點的完全二叉樹,對任意一個節點 \(i\) ,如果 \(i=1\),則該節點為根,沒有父節點,如果 \(i>1\),其父節點編號為 \(\lfloor i/2 \rfloor\)
如果 \(2i>n\),則該節點沒有子節點,即節點 \(i\) 為葉子節點;否則左孩子編號為 \(2i\)
如果 \(2i+1>n\),則該節點沒有右孩子;否則右孩子編號為 \(2i+1\)

相關文章