STL容器-Vector用法
基本操作
1、创建
头文件 #include<vector>
创建 vector<int> v;
2、插入删除
尾部插入元素 v.push_back(a);
在第i+1个元素前面插入a v.insert(v,begin()+i);
删除第i+1个元素 v.erase(v,begin()+i);
删除区间[i,j)的元素 v.erase(v.begin()+i,v.end()+j);
3、访问
下标访问第i+1个元素 cout<<v[i]<<endl;
迭代器访问
vector<int>::iterator it; for(it=vec.begin();it!=vec.end();it++) cout<<*it<<endl;
4、大小及清空
已存元素个数 v.size();
清空 v.clear();
定义结构体为元素
注意:结构体要定义为全局的,否则会出错。
1、创建
struct Node { int x,y; }; vector<Node> v;
2、定义比较函数 //待补充
其他
1、翻转
头文件 #include<algorithm>
翻转 reverse(v.begin(),v.end());
2、排序
头文件 #include<algorithm>
sort(v.begin(),v.end());//默认从小到大排序,即升序
重写比较函数
bool cmp(int a,int b) { return a>b; }
调用 sort(v.begin(),v.end(),cmp);//降序排列

浙公网安备 33010602011771号