C++中的STL容器

在讲STL容器底层前先回忆一下STL容器:
1、vector
2、list
3、forward_list
4、queue
5、priority_queue
6、deque
7、stack
8、array
9、map
10、multimap
11、unordered_map
12、unordered_multimap
13、set
14、multiset
15、unordered_set
16、unordered_multiset

非容器:
1、pair
2、tuple

STL底层

主要讨论各种map和set的底层实现。
所有unordered类型的容器都是基于哈希表实现的,
其余map和set类的容器都是红黑树实现的,
此外priority_queue类似大顶堆

红黑树

哈希表

大顶堆