1.array :固定大小的顺序容器,它们保存了一个以严格的线性顺序排列的特定数量的元素
2.vector动态数组:
原理:连续的内存空间
性能:查找删除与数组性能一样,增加元素引发扩容时会有性能压力,一般为当前大小的两倍,然后把原数组的内容拷贝过去,接着释放原来的空间
size()表示数组中元素个数有多少,capacity()表示数组有多大容量
3.list 链表:
原理:双向链表
性能:常量性能的增删,不支持随机访问
4.map, multimap:
原理:以Key建立的红黑树
5.set,multiset:
原理:红黑树
6.unordered_map:
所有无序容器的底层实现都是Hash Map
原理:序容器存储键值对时,会先申请一整块连续的存储空间,但此空间并不用来直接存储键值对,而是存储各个链表的头指针,我们称其为桶,各键值对真正的存储位置是各个链表的节点。