1. 分类
- 序列式容器(sequential container)
vector, list, array, deque, forward_list - 关联式容器(associative container)
map, multimap, set, multiset, unordered_map, unordered_multimap, unordered_set, unordered_multiset - 适配器(adaptor)
stack, queue, priority_queue
2. 特点对比
内存空间 | 查询 | 插入删除 | |
---|---|---|---|
array | 静态连续空间 | O(1) | 不允许 |
vector | 动态连续空间 | O(1) | 自动扩展size,但需要copy元素,O(n)(从末尾插入/删除则O(1)) |
list | 动态非连续空间 | O(n) | O(1) |
deque | 动态(分段)连续空间 | 小于vector的O(1) | 扩展size不需要copy元素,从头、尾两端插入/删除O(1) |
stack | 动态空间 | 只能看top() | FILO O(1) |
queue |