ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

AVL tree 高度上下界推导

2022-08-06 20:03:18  阅读:149  来源: 互联网

标签:begin frac 推导 tree sqrt AVL end aligned bigg


1. 高度下界

2. 高度上界

2.1. 最大高度对应 Node 数量 \(N_{h}\) 的递归公式

设有一棵 AVL tree 的高度为 \(h\), 对于该树, 其 node 数量为 \(N_{h}\).
有: 最坏情况下, root 的两棵 subtree 高度为 \(h-1\) 和 \(h-2\).
因此得到以下公式 (其中 \(h \in N^{+}\)):

\[N_{h}= \begin{cases} 0 &h=0 \\ 1 &h=1 \\ N_{h-1}+N_{h-2}+1 &h\geq2 \end{cases} \]

2.2. 数学归纳法证明 \(N_{h}=Fibonacci_{(h+2)}-1\)

已知:

\[\begin{aligned} N_{h}&=\begin{cases}0 &h=0 \\1 &h=1 \\N_{h-1}+N_{h-2}+1 &h\geq2\end{cases}\\ ~\\ F_{h}&=F_{h-1}+F_{h-2}~~h\geq2 \end{aligned} \]

且有:

\[N_{0}=F_{2}-1\\ N_{1}=F_{3}-1 \]

假设:

\[N_{k}=F_{k+2}-1,~k \in N^{+}~且~k\geq3 \]

则:

\[\begin{aligned} N_{k+3}&=N_{k+1}+N_{k+2}+1\\ &=F_{k+3}-1+F_{k+4}-1+1\\ &=F_{k+5}-1 \end{aligned} \]

假设成立.

2.3. \(N_{h}\) 的通项公式

已知 Fibonacci sequence 的通项公式为:

\[F_{n}=\frac{1}{\sqrt{5}}\bigg[\bigg(\frac{\sqrt{5}+1}{2}\bigg)^n + \bigg(\frac{\sqrt{5}-1}{2}\bigg)^n\bigg] \]

根据 2.2 的证明, 得到:

\[n=\frac{1}{\sqrt{5}}\bigg[\bigg(\frac{\sqrt{5}+1}{2}\bigg)^{h+2} + \bigg(\frac{\sqrt{5}-1}{2}\bigg)^{h+2}\bigg]-1 \]

即:

\[\frac{1}{\sqrt{5}}\bigg(\frac{\sqrt{5}+1}{2}\bigg)^{h+2} = n+1- \frac{1}{\sqrt{5}}\bigg(\frac{\sqrt{5}-1}{2}\bigg)^{h+2} \]

由于 \(t = \frac{1}{\sqrt{5}}\bigg(\frac{\sqrt{5}-1}{2}\bigg)^{h+2} \in (0,0.2)\), 为了更方便地求得 \(h\) 的上界, 这里假设 \(t=0\).
因此:

\[\begin{aligned} h&=\lfloor\log_{(\sqrt{5}+1) / 2}{\sqrt{5}(1-n)}-2\rfloor \\ &=O(\log{n}) \end{aligned} \]

标签:begin,frac,推导,tree,sqrt,AVL,end,aligned,bigg
来源: https://www.cnblogs.com/jamesnulliu/p/dsaaincpp-avltree-height.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有