STL Vector的使用

隐身守侯 提交于 2020-02-14 17:43:21

数组作为基本的数据结构,有静态数组和动态数组两种类型。比赛中,空间足够,能用静态数组就静态,不然就用vector,最后才是用指针管理动态数组。

vector是一个模板类,其中的元素连续存储。

使用方法如下:

  1. 定义:常用的定义方法如下:
例子 说明
vector a; 默认初始化,a空
vector b(a); 用a定义b
vector a(100); a有100个默认初始化为0的元素
vector a(100, -1); a用100个值为-1的元素
vector a(100, “hello”); a有100个值为"hello"的元素
vector a; a可以保存自定义的结构体类型
  1. 常见操作方法:
例子 说明
a.push_back(100); 尾部插入一个元素
a.emplace_back(100); 尾部构造一个元素
a.size() 元素个数
bool a.empty() 是否为空
a.insert(a.begin() + i, k); 插入一个元素
a.insert(a.end(), k, j); 在尾部插入k个值为j的元素
a.pop_back(); 删除尾部
a.erase(a.begin() + i, a.end() + j); 删除区间
a.erase(a.begin() + i); 删除元素
a.resize(n); 调整大小
a.clear(); 清空
reverse(a.begin(), a.end()); 翻转
sort(a.begin(), a.end()); 排序
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!