AVL tree 高度上下界推导
2022/8/6 23:27:11
本文主要是介绍AVL tree 高度上下界推导,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
1. 高度下界
2. 高度上界
2.1. 最大高度对应 Node 数量 \(N_{h}\) 的递归公式
设有一棵 AVL tree 的高度为 \(h\), 对于该树, 其 node 数量为 \(N_{h}\).
有: 最坏情况下, root 的两棵 subtree 高度为 \(h-1\) 和 \(h-2\).
因此得到以下公式 (其中 \(h \in N^{+}\)):
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\).
因此:
这篇关于AVL tree 高度上下界推导的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-12-28一步到位:购买适合 SEO 的域名全攻略
- 2024-12-27OpenFeign服务间调用学习入门
- 2024-12-27OpenFeign服务间调用学习入门
- 2024-12-27OpenFeign学习入门:轻松掌握微服务通信
- 2024-12-27OpenFeign学习入门:轻松掌握微服务间的HTTP请求
- 2024-12-27JDK17新特性学习入门:简洁教程带你轻松上手
- 2024-12-27JMeter传递token学习入门教程
- 2024-12-27JMeter压测学习入门指南
- 2024-12-27JWT单点登录学习入门指南
- 2024-12-27JWT单点登录原理学习入门