高度为 $h$ 的 AVL 树, 其最少的结点数是多少?
高度为 $h$ 的 AVL 树, 其最少的结点数是多少?
[Hint]
高度为 $h$ 的 AVL 树, 其最少的结点数若记 $S(h)$, 则 $S(h)$ 有三部分组成: 1(根结点), 左子树的最少结点数, 右子树的最少结点数.
由于 AVL 树的平衡条件是: 任意结点的左子树与右子树的高度之差的绝对值至多为 1. 因此如果左子树的最少结点数是 $S(h-1)$, 则右子树的最少结点数是 $S(h-2)$.
于是, 我们得到关于 $S(h)$ 的递推表达式:
\[
S(h)=S(h-1)+S(h-2)+1.
\]
这与 Fibonacci 的递推表达式非常类似, 仅相差一个常数 1.
试求出 $S(h)$ 的具体表达式.
P. 132 Ex 4.18