目录
Vector
C++的vector本质上是一个动态数组,它的元素是连续存储的,所以可以通过迭代器访问元素,还可以使用指向元素的常规指针来对其进行访问。vector的存储是自动处理的,可以根据需要进行扩展和收缩,vector通常比静态数组占用更多的空间,因此分配了更多的内存来处理将来的增长。
优点:
1.使用的时候无须声明上限,随着元素的增加,vector的长度会自动增加。
2.vector是向量类型,封装了动态大小数组的顺序容器,能够存放各种类型的对象,可以认为,vector可以存放任意类型的动态数组。
缺点:
1.时间:运行时间与数组相比会比较慢。
2.clear()无法清空内存。
初始化
#include <iostream>
#include <vector>
using namespace std;
int main()
{
//vector<int> v(10); 初始size是10,可改变
vector<int> v(10, 4);//值为4
vector<vector<int>> ways;//二维
//for(vector<int> :: iterator i = v.begin(); i != v.end(); i ++ )
// cout << *i << " ";
for(auto x: v) cout << x << " ";
return 0;
}
常用操作
v.front();//返回a的第一个元素
v.back();//返回a的最后一个元素
v[0];//下标的方式访问
v.clear();//清空
v.size();//个数
v.empty();//判断是否为空
v.pop_back();// 删除最后一个元素
v.push_back(0);//在最后一个元素后面插入元素
v.erase(v.begin(), v.begin()+1);//删除第一个元素