文章目录
C++ STL:用法简介 + 常用接口
- 新增@1:
emplace_back往vector添加pair时,应该是xx.emplace_back(x, y),需要与xx.push_back({x, y})区分开。
1.vector
vector是一种变长数组,应用了倍增的思想
用法:vector<数据类型> 变量名(数组大小,数组初始化时每个元素的默认值)。
举例:vector<int> a(10, 1),定义的是一个大小为10(数组大小),每个元素均为int(数据类型)型的数据3(初始化时的值)的数组a(变量名)。
返回空数组的方法:return vector<int> {},C++11支持更简洁的方式return {}
常用接口:
a.size(): 返回容器a的大小。a.empty(): 判断容器a是否为空。为空返回true,否则返回false。a.clear(): 清空容器a,使其size变为0。front()/back(): 容器的首个元素和最后一个元素。push_back()/pop_back(): 从尾部插入一个元素;从尾部删除一个元素。begin()/end(): 迭代器首元素地址和最后一个元素的地址。[]: 支持随机访问,a[i]。支持比较运算:按字典序比较。lower_bound(a.begin(), a.end(), x)/upper_bound(a.begin(), a.end(), x): 返回大于等于x的最小的数的迭代器/返回大于x的最小的数的迭代器。
注意:以上
size()/empty()两个接口在本文章所介绍到的容器中都有着相同的接口,且时间复杂度均为O(1),以下不再赘述。
2.string
string是C++对字符数组进行了封装,使用起来更便捷了
用法:例如:string s = "OpenAll_Zzz"。
操作方式

最低0.47元/天 解锁文章
443





