vector向量容器不但能像数组一样对元素进行随机访问,还能在任意位置插入元素(下标从0开始),是一种简单高效的容器,在程序的编写中可以代替数组;
其他的不用多说,对于C语言有一定基础的都可以看懂
下面来是对于vector的一些基本操作:
//vector实现对元素的遍历以及对元素的反向排序以及向量的大小
//vector实现对元素的遍历以及对元素的反向排序以及向量的大小
#include <vector>
#include <iostream>
#include <algorithm>
using namespace std;
bool cmp(int *a,int *b)
{
if(a!=b) return a>b;
else return a>b;
}
int main()
{
vector<int> v;
v.push_back(2);
v.push_back(3);
v.push_back(4);
vector<int>:: iterator it;
for(it=v.begin(); it!=v.end(); it++)
cout<<*it<<" ";
cout<<endl;
//降序排列
reverse(v.begin(),v.end());
for(it=v.begin(); it!=v.end(); it++)
cout<<*it<<" ";
cout<<endl;
//升序排列
sort(v.begin(),v.end());
for(it=v.begin(); it!=v.end(); it++)
cout<<*it<<" ";
cout<<endl;
//使用sort实现降序
sort(v.begin(),v.end());
for(it=v.begin(); it!=v.end(); it++)
cout<<*it<<" ";
cout<<endl;
cout<<v.size()<<endl;
cout<<v.empty()<<endl;//输出为0说明逻辑假,此向量非空
v.clear();
cout<<v.empty()<<endl;
return 0;
}
//vector实现对元素的插入及删除,清空
#include <iostream>
#include <algorithm>
#include <vector>
using namespace std;
int main()
{
vector<int> v;
v.push_back(2);
v.push_back(3);
v.push_back(4);
v.insert(v.begin(),5);//在最前面插入一个元素5
v.insert(v.begin()+2,6);//在第二个元素前加一个元素6
v.erase(v.begin()+2);//删除第2各元素“下标从0开始”
v.erase(v.begin()+1,v.begin()+2);//删除区间
vector<int>:: iterator it;
for(it=v.begin(); it!=v.end(); it++)
cout<<*it<<" ";
cout<<endl;
cout<<v.size()<<endl;//输出向量的大小
v.clear();//清空向量
cout<<v.size()<<endl;
return 0;
}