容器
容器是用来存储数据的序列,它们提供了不同的存储方式和访问模式。
STL 中的容器可以分为三类:
1、序列容器:存储元素的序列,允许双向遍历。
- vector:动态数组,支持快速随机访问。
- deque:双端队列,支持快速插入和删除。
- list:链表,支持快速插入和删除,但不支持随机访问。
2、关联容器:存储键值对,每个元素都有一个键(key)和一个值(value),并且通过键来组织元素。
- set:集合,不允许重复元素。
- multiset:多重集合,允许多个元素具有相同的键。
- map:映射,每个键映射到一个值。
- multimap:多重映射,允许多个键映射到相同的值。
3、无序容器(C++11 引入):哈希表,支持快速的查找、插入和删除。
- unordered_set:无序集合。
- unordered_multiset:无序多重集合。
- unordered_map:无序映射。
- unordered_multimap:无序多重映射。