C++基本操作
vector
![image-20200324172937806](/Users/yangfan/Library/Application Support/typora-user-images/image-20200324172937806.png)
如何查找 第二维?或者第一维
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);
迭代器
![image-20200324173546158](/Users/yangfan/Library/Application Support/typora-user-images/image-20200324173546158.png)
string
![image-20200324173757083](/Users/yangfan/Library/Application Support/typora-user-images/image-20200324173757083.png)
- 插入操作全是O(n)复杂度的
![image-20200324173941567](/Users/yangfan/Library/Application Support/typora-user-images/image-20200324173941567.png)
algorithm
''#include
快速排序
![image-20200324174749889](/Users/yangfan/Library/Application Support/typora-user-images/image-20200324174749889.png)
![image-20200324175859554](/Users/yangfan/Library/Application Support/typora-user-images/image-20200324175859554.png)
![image-20200324180008641](/Users/yangfan/Library/Application Support/typora-user-images/image-20200324180008641.png)
函数重载
* 符号重载
![image-20200326093309640](/Users/yangfan/Library/Application Support/typora-user-images/image-20200326093309640.png)
nth_element 排序 找第n号元素(从第零号开始)
![image-20200326093722346](/Users/yangfan/Library/Application Support/typora-user-images/image-20200326093722346.png)
![image-20200326094008608](/Users/yangfan/Library/Application Support/typora-user-images/image-20200326094008608.png)
stack 栈
![image-20200326094524051](/Users/yangfan/Library/Application Support/typora-user-images/image-20200326094524051.png)
queue队列
pair类型
https://blog.csdn.net/Enterprise_/article/details/73695255
![image-20200326094604579](/Users/yangfan/Library/Application Support/typora-user-images/image-20200326094604579.png)
stack 和 queue 时间复杂度 加入 和删除操作 O(1)
优先队列 按照优先级插入 O(log n)
set集合
![image-20200326094918537](/Users/yangfan/Library/Application Support/typora-user-images/image-20200326094918537.png)
集合是排好序的
map
![image-20200326095148731](/Users/yangfan/Library/Application Support/typora-user-images/image-20200326095148731.png)
![image-20200326095410805](/Users/yangfan/Library/Application Support/typora-user-images/image-20200326095410805.png)
![image-20200326095645535](/Users/yangfan/Library/Application Support/typora-user-images/image-20200326095645535.png)
![image-20200326095758337](/Users/yangfan/Library/Application Support/typora-user-images/image-20200326095758337.png)
![](/Users/yangfan/Library/Application Support/typora-user-images/image-20200326095744892.png)
Multiset multimap 改为unordered_set, unordered_map
![image-20200326100126997](/Users/yangfan/Library/Application Support/typora-user-images/image-20200326100126997.png)
不需要理解每一个细节~~
www.cplusplus.com/reference/ 认真查看STL用法
自己瞎调
![image-20200326100402000](/Users/yangfan/Library/Application Support/typora-user-images/image-20200326100402000.png)
10e6数据能用O(nlog n) 再大 只能用O(n)