具有N个结点的平衡二叉树的深度一定不小于logn对么?为什么

来源:学生作业帮助网 编辑:作业帮 时间:2024/07/12 19:14:10
具有N个结点的平衡二叉树的深度一定不小于logn对么?为什么
xTMSP;II LW%taաn8N8c J *Ta|XE`H(ʿЛvn=M(̘ԲQKA''4m#ٴ#(dI#d<m*V-=e7>&oXMk[heSאB*/}݇iվEc nv9f޼HA ۀTfzD*'vgj.YERdK^T")aE4yِu3tP ""GKCT'jr6#AfޑR# z6ԠCnV}k.H5U$7M8:e"+3 0 ,ʠ "k+ZZYfβDϮh Zi$Tૈaߤ묇K*2_O%I~6.ysy4ʌì qN&v6Y“r%K$m>߂TPt"eg;2f} _e,+;{byȳ>YB,xC/OOa>;fYYtHV&-G5۴saPݣ_ 2B߻zDF;sy9sw GY[1ufCF*yh-C/ٳȴ0 ̘i]g_,c8R Rd u:

具有N个结点的平衡二叉树的深度一定不小于logn对么?为什么
具有N个结点的平衡二叉树的深度一定不小于logn对么?为什么

具有N个结点的平衡二叉树的深度一定不小于logn对么?为什么
证:设N[h]表示高度为h的AVL树最少含有的节点数,则显而易见地,N[1]=1,N[2]=2,并且N[h]=N[h-1]+N[h-2]+1(N>2),因为高为h的话,必然有一颗子树高为h-1,由于平衡性质,另一颗至少高度为h-2.
对于最后的二阶差分方程,通过代换来齐次化(N[h]+1)=(N[h-1]+1)+(N[h-2]+1),即得到Fibonacci数列,特征方程x^2-x-1=0,利用初值F[0]=0;F[1]=1求出系数,得到F[n]=(alpha^n-beta^n)/sqrt(5),其中alpha=(1+sqrt(5))/2,beta=(1-sqrt(5))/2.
则对应地N[h]=F[h+2]-1.
F[n]与alpha^n/sqrt(5)是同阶无穷大.因为
lim(F[n]/(alpha^n/sqrt(5)))=lim(1+((1-sqrt(5))/(1+sqrt(5)))^n)
=lim(1+(-1)^n*((sqrt(5)-1)/(sqrt(5)+1))^n)=lim(1+(-1)^n*0)=1
所以N[h]约等于alpha^(h+2)/sqrt(5)-1.
对应得,h可表示为sqrt(5)*log(N+1)-2.
即,N个点的AVL树,最大深度可表示为O(logN).
严格的数学证明如上,无奈输入的符号看着较乱,望见谅.