连续两次面试都问到了红黑树,关键两次都没有答好,这次就完整地来学习整理一下。
没有学习过红黑树的同学请参考:
<<Introduction to Algorithms>> Chapter 13 Red-Black Trees Chapter 14 Augmenting Data Structures
1.stl中的set底层用的什么数据结构?
2.红黑树的数据结构怎么定义的?
3.红黑树有哪些性质?
4.红黑树的各种操作的时间复杂度是多少?
5.红黑树相比于BST和AVL树有什么优点?
6.红黑树相对于哈希表,在选择使用的时候有什么依据?
7.如何扩展红黑树来获得比某个结点小的元素有多少个?
8.扩展数据结构有什么步骤?
9 为什么一般hashtable的桶数会取一个素数
详细解答
1.stl中的set底层用的什么数据结构?
红黑树
2.红黑树的数据结构怎么定义?