STL---vector
作者:
弗兰克
,
2021-09-09 21:00:38
,
所有人可见
,
阅读 233
#include <iostream>
// 头文件引入
#include <vector>
using namespace std;
// 变长数组,采用倍增思想进行扩充, 效率很高
vector<int> a({1, 2, 3});
int main()
{
// vector大小
cout << a.size() << endl;
// vector是否为空
cout << a.empty() << endl;
// vector迭代器不常用
vector<int>::iterator it = a.begin();
for (int i = 0; i < a.size(); i ++ ) cout << a[i] << ' ';
cout << endl;
// 不常用的遍历方式
for (vector<int>::iterator i = a.begin(); i != a.end(); i ++ ) cout << *i << ' ';
cout << endl;
// 这里的i是指针类型
for (auto i = a.begin(); i != a.end(); i ++ ) cout << *i << ' ';
// 头和尾、a.end()是back后那个元素
cout << a.front() << ' ' << endl;
cout << a.back() << ' ' << endl;
// 在a尾部新增元素 O(1)
a.push_back(1);
for (int i = 0; i < a.size(); i ++ ) cout << a[i] << ' ';
// 删除a尾部的一个元素 O(1)
a.pop_back();
for (int i = 0; i < a.size(); i ++ ) cout << a[i] << ' ';
return 0;
}