采纳答案成功!
向帮助你的同学说点啥吧!感谢那些助人为乐的人
老师, 视频里面说红黑树的最大高度是2logn n是红黑树的结点数, 我咋感觉n应该是2-3树的结点数, 或者说是红黑树黑结点的数目呢
如果 n 是 黑节点数,那么红黑树高度肯定超不过 2logn,没有问题。
但如果 n 是红黑树节点总数的话,红黑树的高度存在一个上界,这个上界严格来说,是2log2(n + 1)。
具体证明可以参考这里:https://www.geeksforgeeks.org/red-black-tree-set-1-introduction-2/
继续加油!:)
非常感谢!
老师您好,请问为什么BST的高度是logn,而红黑树的高度是2logn?
首先;BST 的高度不是 logn 的,BST 的高度可能退化为 n,所以才有平衡二叉树的概念。一个绝对平衡的二叉树,高度是 logn 级别的。这一点我在讲堆的时候应该推导过。高度为 1 的树最多有 1 个节点 = 2^1 - 1;高度为 2 的树最多有 3 个节点 = 2^2 - 1;高度为 3 的树最多有 7 个节点 = 2^3 - 1;以此类推。高度和节点数量之间是 log 的关系。红黑树的黑节点满足平衡,所以黑节点的高度是 logn 级别的。每个黑节点下面可以再有一个红节点,所以整体式 2logn 的。当然,从复杂度的角度,O(2logn) 就是 O(logn)。继续加油:)
登录后可查看更多问答,登录/注册
动态数组/栈/队列/链表/BST/堆/线段树/Trie/并查集/AVL/红黑树…
10.4k 16
1.4k 17
1.4k 14
1.3k 14