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);//降序排列

 

posted @ 2017-08-22 15:39  远风行百里  阅读(274)  评论(0)    收藏  举报