zoukankan      html  css  js  c++  java
  • vector的应用

    1.0基本操作

    (1)头文件:  #include<vector>;

    (2)创建:  vector<int>vec, vector<double>vec, vector<string>vec, vector<结构体>vec;

    (3)尾部插入:  vec.push_back(a);

    (4)使用下标访问元素:  cout<<vec[0]<<endl;//下标是从0开始的。

    (5)使用迭代器访问元素:

      vector<int>::iterator it;

      for(it=vec.begin();it!=vec.end();it++)

        cout<<*it<<endl;

    (6)插入元素:    vec.insert(vec.begin()+i,a);在第i+1个元素前面插入a;

    (7)删除元素:    vec.erase(vec.begin()+i);删除第i+1个元素

    (8)删除区间[i,j-1]:  vec.erase(vec.begin()+i,vec.begin()+j);区间从0开始

    (8)向量大小:  int len=vec.size();

    (9)清空:  vec.clear();

    2.0算法

     算法

    (1) 使用reverse将元素翻转:需要头文件#include<algorithm>

    reverse(vec.begin(),vec.end());//将元素翻转(在vector中,如果一个函数中需要两个迭代器,一般后一个都不包含.)

    (2)使用sort排序:需要头文件#include<algorithm>,

    sort(vec.begin(),vec.end());//(默认是按升序排列,即从小到大).

    可以通过重写排序比较函数按照降序比较,如下:

    定义排序比较函数:

    bool Comp(const int &a,const int &b)
    {
        return a>b;
    }
    调用时:sort(vec.begin(),vec.end(),Comp);//这样就降序排序。

    2015-10-16

  • 相关阅读:
    Codeforces 385C
    Codeforces 496C
    HDU 6114 Chess
    Codeforces 839B
    Codeforces 483B
    Codeforces 352B
    Codeforces 768B
    Codeforces 38B
    Codeforces 735B
    Codeforces 534B
  • 原文地址:https://www.cnblogs.com/dj3839/p/4886374.html
Copyright © 2011-2022 走看看