令 T 为一棵 AVL 树,其左子树为 TL,右子树为 TR。让我们让 |TL|和|TR|分别为左右子树的节点数。
我需要证明 |TR| ≠ Θ(|TR|) 反之亦然,但我不知道如何。我认为这与一棵树是完整的 AVL 树而另一棵是最小的 AVL 树(斐波那契树)的情况有关,但我不知道从那里该怎么做。
最佳答案
在高度为 h 的 AVL 树中,节点数介于 Fh+2 - 1 和 2h - 1 之间。第一个量是 Θ(φ h),第二个是 Θ(2h),其中 φ 是黄金比例,约为 1.61。这意味着您可以构造 AVL 树,其中左子树中的节点数为 Θ(φh),右子树为 Θ(2h),这意味着左子树的节点数逐渐少于右子树的节点数。然后可以左右反转,证明右子树也不可能是左子树的Θ。
希望这对您有所帮助!
关于algorithm - 证明 AVL 树可以有节点数不是彼此的 Θ 的子节点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23624077/