C++基本操作
目录
vector
如何查找 第二维?或者第一维
class isE{
isE(int val) :User(val){}
bool operator()(const pair<int,int>& e)const{
return e.second == User;
}
const int User;
}
vector<pair<int,int>> res;
auto it = find_if(res.begin(), res.end(),isE(val));返回一个迭代器
排序
bool cmp(PII x, PII y){
return x.first > y.first;
}//从大到小排
sort(res.begin(), res.end(),cmp);
迭代器
string
- 插入操作全是O(n)复杂度的
algorithm
''#include
快速排序
函数重载
* 符号重载
nth_element 排序 找第n号元素(从第零号开始)
stack 栈
queue队列
pair类型
https://blog.csdn.net/Enterprise_/article/details/73695255
stack 和 queue 时间复杂度 加入 和删除操作 O(1)
优先队列 按照优先级插入 O(log n)
set集合
集合是排好序的
map
![](/Users/yangfan/Library/Application Support/typora-user-images/image-20200326095744892.png)
Multiset multimap 改为unordered_set, unordered_map
不需要理解每一个细节~~
www.cplusplus.com/reference/ 认真查看STL用法
自己瞎调
10e6数据能用O(nlog n) 再大 只能用O(n)