Vector 本来是向量的意思,只不过在用法上类似于一个不限长度的数组。
定义语法:vector<数据类型> 名称;
一、头文件:<vector> (bits/stdc++请忽略)
二、常用方法:
a.size(); //读取大小
a.resize(): //改变大小
a.push_back(); //向尾部添加元素
a.pop_back(); //删除最后一个元素
a.clear(); //清空
a.empty(): //返回是否为空
三、遍历
STL的数据类型几乎(也许是全部)使用迭代器遍历。
vector<int>::iterator it = a.begin(); //创建一个vector类型的迭代器(类似于指针)指向a的首地址
在for中写就是:
for (vector<int>::iterator it = a.begin(); it != a.end();it++)
然后就可以使用*it来访问指向的地址的值了。
四、其他
插入元素: vec.insert(vec.begin()+i,a); 在第i+1个元素前面插入a; (也就是说这个a就是i+1的位置)
删除元素: vec.erase(vec.begin()+2); 删除第3个元素
vec.erase(vec.begin()+i,vec.end()+j); 删除区间[i,j-1];区间从0开始 (这个争议比较大,保留疑惑,正常不用)
待补充…………