Vector数组的应用

vector是表示可变大小数组的序列容器。

1.修改

末尾添加元素: vec.push_back();

末尾删除元素: vec.pop_back();

任意位置插入元素: vec.insert();

任意位置删除元素: vec.erase();

清空向量元素: vec.clear();.

2.元素的访问

  • 下标访问: vec[1]; //并不会检查是否越界
  • at方法访问: vec.at(1); //以上两者的区别就是at会检查是否越界,是则抛出out of range异常
  • 访问第一个元素: vec.front();

访问最后一个元素: vec.back();

3.算法

元素的访问

vector<int>::iterator it;
for (it = vec.begin(); it != vec.end(); it++)
    cout << *it << endl;
//或者
for (size_t i = 0; i < vec.size(); i++) {
    cout << vec.at(i) << endl;
}

元素的翻转

#include <algorithm>
reverse(vec.begin(), vec.end());

元素的排序

#include <algorithm>
sort(vec.begin(), vec.end()); //采用的是从小到大的排序
//如果想从大到小排序,可以采用上面反转函数,也可以采用下面方法:
bool Comp(const int& a, const int& b) {
    return a > b;
}
sort(vec.begin(), vec.end(), Comp);
原文地址:https://www.cnblogs.com/laoyangtou/p/8821116.html