
STL与pb_ds(持续更新)

首先是工程中良好的习惯:局部引用或每次引用
1 |
|
不过比赛中为了思路连续性一般选择最简单的写法
1 |
|
以及:
不!要!在赛时强行用自己不熟悉的数据结构!
不然查错都无从下手
std::
通用
1 |
|
迭代器
本质:经stl封装后的指针
1 | vector<int> test; |
迭代器在stl中的定义注定了其区间都是左闭右开的,如上面循环的终止条件,以及contianer.find(x) != container.end()
这样的用法等
序列式
vector 可变数组
定义
1 | vector <int> a; // 最简单的定义 |
deque 双端队列
list 双向链表
关联式
(unordered_)(multi)set(无序)(多重)集合
(unordered_)(multi)map (无序)(多重)映射
适配器
stack 栈
基于std::deque
queue 队列
基于std::deque
priority_queue 优先队列(大根堆)
__gnu_pbds::
priority_queue 堆
tree 平衡树
etc
以上内容大部分来自STL 容器简介 - OI Wiki和pb_ds 简介 - OI Wiki,意在提醒自己基础用法,之后会择日重写或封装一些更高级的数据结构
真的不是水,很容易忘的
- Title: STL与pb_ds(持续更新)
- Author: 155TuT
- Created at : 2025-04-10 22:30:00
- Updated at : 2025-05-10 17:28:33
- Link: https://155tut.github.io/2025/04/10/stl-and-pbds/
- License: This work is licensed under CC BY-NC-SA 4.0.