C++模板库——自用

STL

STL代码从广义上讲分为algorithm,container和iterator。
iterator模式又称cursor模式,用于提供一种顺序访问一个聚合对象中的各个元素。
iterator模式是运用于聚合对象的一种模式,使得用户可以在不知道对象内部表示的情况下,按照一定顺序访问对象中的每一个元素。

Vetor

vector是向量容器,其构造原型是数组类型。实现动态数组结构,无需使用者进行内存管理。

  1. at(idx):返回索引idx所指的数据。
  2. begin():返回容器的第一个元素的迭代器。
  3. clear():清空容器中的数据。
  4. empty():判断是否为空。
  5. end():返回最后一个数据的后一个迭代器,该迭代器不指向有效数据,作为判断结束的标志使用。
  6. push_back:尾部插入,O(1)。
  7. size():返回实际元素的个数。
  8. 增加了 检查列表 功能。

Set

1.insert(elem): o(logn)
2.count(elem):统计集合中是是否存在elem,存在返回1,否则返回0。
3.erase(elem):删除。
4.find(elem):寻找集合中的迭代器,存在返回对应元素的迭代器,不存在返回end().

Map

为保证map数据的唯一性,map会自动排序

1.begin():返回最小数据的迭代器。
2.insert(elem1,elem2):插入。
3.find(elem):返回迭代器。

Priority_queue

头文件queue。是堆式容器,并且返回当前数据的最大值,不能返回其他值。
1.empty():判空。
2.push(elem):插入。
3.pop():删除堆顶元素。
4.top():返回堆顶元素。

猜你喜欢

转载自blog.csdn.net/qq_45175218/article/details/103600984