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; }