C++ 竞赛(CSP)常用 STL 全注释版
1. 基础容器:array / vector / string
1.1 array(定长数组)
1 |
|
1.2 vector(变长数组,最常用)
1 |
|
1.3 string(字符串)
1 |
|
2. 有序关联容器:set / multiset / map / multimap
2.1 set(不重复、有序集合)
1 |
|
2.2 multiset(可重复、有序集合)
1 |
|
2.3 map(key 唯一、有序字典)
1 |
|
2.4 multimap(key 可重复、有序字典)
1 |
|
3. 无序关联容器:unordered_set / unordered_map
3.1 unordered_set(哈希集合)
1 |
|
3.2 unordered_map(哈希字典)
1 |
|
4. 线性容器:queue / stack / deque / priority_queue
4.1 queue(队列,FIFO)
1 |
|
4.2 stack(栈,FILO)
1 |
|
4.3 deque(双端队列)
1 |
|
4.4 priority_queue(优先队列,堆)
大根堆(默认)
1 |
|
小根堆
1 |
|
自定义结构 + 自定义比较
1 |
|
5. 常用算法:<algorithm> / <numeric>
5.1 sort 排序
1 |
|
带自定义比较的 sort:
1 |
|
5.2 二分相关:lower_bound / upper_bound / binary_search
1 |
|
5.3 min / max / min_element / max_element
1 |
|
5.4 reverse / unique
1 |
|
5.5 accumulate(在 <numeric> 中)
1 |
|
6. 其它常见 STL:pair / tuple / bitset
6.1 pair / tuple
1 |
|
6.2 bitset(定长位集,用于状态压缩)
1 |
|