满二叉树及完全二叉树的相关性质证明
生活随笔
收集整理的這篇文章主要介紹了
满二叉树及完全二叉树的相关性质证明
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
各層結(jié)點數(shù)為20,21,...,2h?12^0,2^1,...,2^{h-1}20,21,...,2h?1
根據(jù)等比序列求和公式,可得到總結(jié)點數(shù):s=1(1?2h)/(1?2)=2h?1s=1(1-2^h)/(1-2) = 2^h-1s=1(1?2h)/(1?2)=2h?1
結(jié)點最少情況為:h-1層滿二叉樹加1個結(jié)點。
結(jié)點最多情況為:h層滿二叉樹。
證明:
2h?1=n2^h-1 = n2h?1=n
2h=n+12^h = n+12h=n+1
h=log2(n+1)h=log_2(n+1)h=log2?(n+1)
證明:
設(shè)該二叉樹有h層,第h層有m個結(jié)點
要證明:h=?log2n?+1h=\lfloor log_2n \rfloor+1h=?log2?n?+1
前h-1層是滿二叉樹,共n?mn-mn?m個結(jié)點,
即h?1=log2(n?m+1)h-1=log_2(n-m+1)h?1=log2?(n?m+1)
h=log2(n?m+1)+1h=log_2(n-m+1)+1h=log2?(n?m+1)+1
因為:m≥1m\ge1m≥1,所以:m?1≥0m-1\ge0m?1≥0
因此:log2n≥log2(n?(m?1))log_2n \ge log_2(n-(m-1))log2?n≥log2?(n?(m?1))
所以:log2n+1≥log2(n?m+1)+1=hlog_2n + 1 \ge log_2(n-m+1)+1 = hlog2?n+1≥log2?(n?m+1)+1=h
第h層的結(jié)點數(shù)最多為2h?12^{h-1}2h?1個
如樹的結(jié)點有n?m+2h?1n-m+2^{h-1}n?m+2h?1個,這就是一個h層滿二叉樹
此時h=log2(n?m+2h?1+1)h = log_2(n-m+2^{h-1}+1)h=log2?(n?m+2h?1+1)
已知1≤m≤2h?11\le m \le 2^{h-1}1≤m≤2h?1
那么 m?1≤2h?1?1m-1\le 2^{h-1}-1m?1≤2h?1?1
那么 2h?1?(m?1)≥1>02^{h-1} -(m-1) \ge 1 > 02h?1?(m?1)≥1>0
有h=log2(n+2h?1?(m?1))>log2nh=log_2(n+2^{h-1} -(m-1)) > log_2nh=log2?(n+2h?1?(m?1))>log2?n
綜上,有log2n<h≤log2n+1log_2n<h \le log_2n+1log2?n<h≤log2?n+1
設(shè)log2n=?log2n?+alog_2n = \lfloor log_2n \rfloor+alog2?n=?log2?n?+a,
其中0≤a<10 \leq a <10≤a<1
即?log2n?+a<h≤?log2n?+a+1\lfloor log_2n \rfloor+a<h\le\lfloor log_2n \rfloor+a+1?log2?n?+a<h≤?log2?n?+a+1
如果a=0a=0a=0
那么?log2n?<h≤?log2n?+1\lfloor log_2n \rfloor<h\le\lfloor log_2n \rfloor+1?log2?n?<h≤?log2?n?+1
已知h是整數(shù),有h=?log2n?+1h=\lfloor log_2n \rfloor+1h=?log2?n?+1
如果0<a<10<a<10<a<1
那么?log2n?+a<?log2n?+1≤h≤?log2n?+a+1\lfloor log_2n \rfloor+a< \lfloor log_2n \rfloor+1\le h\le\lfloor log_2n \rfloor+a+1?log2?n?+a<?log2?n?+1≤h≤?log2?n?+a+1
此時有h=?log2n?+1h=\lfloor log_2n \rfloor+1h=?log2?n?+1
命題得證
總結(jié)
以上是生活随笔為你收集整理的满二叉树及完全二叉树的相关性质证明的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 信息学奥赛一本通 1414:【17NOI
- 下一篇: 信息奥赛一本通(1119:矩阵交换行)