头文件为#include<vector>
创建对象 vector<int> a; 尖括号中为这个向量中的元素的数据类型
尾部插入数据a.push_back(x); x 为插入的数据
因为在vector中已经重载了下标运算符
使用迭代器访问元素

//使用下标访问元素 cout<<a[0]<<endl; 
 #include<iostream>
#include<vector>
#include<algorithm>
using namespace std;
int main()
{
    vector<int> coll;
    int n, x, y;
    cin>>n;
    y = n;
    while(n--)
    {
        cin>>x;
        coll.push_back(x);
    }
//for(int i = 0; i < y; i++)
//cout<<coll[i]<<endl;
    vector <int> :: iterator i;
    for(i = coll.begin(); i!= coll.end(); i++)
        cout<<*i<<endl;
    return 0;
}
  • 插入元素 coll.insert(coll.begin()+i, a); a为插入的数 插在第i+1个元素前面

  • 删除元素 coll.erase(coll.begin+i); 删除第i+1个数
    vector 删除区间coll.erase(coll.begin()+i, coll.begin()+j);删除区间[i+1,j]

    coll.erase(coll.begin()+2, coll.begin()+5)删除区间[3, 5];

    coll.erase(coll.begin()+i, coll.end()-j);删除区间[i+1, 倒数第j+1];

    coll.erase(coll.begin()+2, coll.end()-3);删除区间[3, 倒数第3+1];

  • 倒置
    reverse(coll.begin(), coll.end());

  • 排序(需要algorithm头文件)
    sort(coll.begin(),coll.end());
    默认是从小到大
    如果需要从大到小可以自定义比较函数
    bool compare(const int &a, const int &b )
    {
    return a > b;
    }
    sort(coll.begin(), coll.end(), compare);

#include<iostream>
#include<vector>
#include<algorithm>
using namespace std;
//bool comp(const int &a, const int &b)
//{
// return a > b;
//}//从大到小排列 
int main()
{
    vector<int> a;
    int n, x;
    cin>>n;
    for(int i = 0; i<n; i++)
    {
        cin>>x;
        a.push_back(x);
    }
    sort(a.begin(),a.end());
    //sort(a.begin(), a.end(), comp);
    //int t;
    //cin>>t;
    //a.insert(a.begin()+3,t);//在第three个后加入t 在第i个后面加上t
    //a.erase(a.begin()+2);//删除第3个 删除第i+1个
    //a.erase(a.begin()+2,a.begin()+4);//闭区间[3,4] [i+1, j]
    //reverse(a.begin(), a.end());
    for(i = 0; i < n; i++)
        cout<<a[i]<<' ';
    return 0;
}