C++ 常用STL及用法 - 速查文档
C++ 常用STL及用法 - 速查文档
具体使用方法,先用现查即可!!!
相关文档推荐,
stirng 字符串
1  | size()/length() 返回字符串长度  | 
vector 变长数组
倍增的思想
特点:系统为某一程序分配空间时,所需时间与空间大小无关,只与申请的次数有关。
1  | size() 返回元素个数  | 
代码示例,
1  | std::vector<int> a(10, 3); // 数组初始化,指定元素个数及值  | 
pair<int, int> 二元组
类似结构体
1  | first, 第一个元素  | 
queue, 队列
(没有清空函数)
1  | size()  | 
priority_queue, 优先队列
默认是大根堆(用堆;来实现的)
1  | 
  | 
stack, 栈
(优先队列跟栈类似)
1  | size()  | 
deque, 双端队列
(加强版的vector),但效率较低
头尾都可以插入或删除
1  | size()  | 
set, map, multiset, multimap 哈希表
基于平衡二叉树(红黑树实现),动态维护有序序列
1  | size()  | 
lower_bound()/upper_bound()
1  | lower_bound(x) 返回大于等于x的最小的数的迭代器 // 一般升序使用  | 
map/multimap
1  | insert() 插入的数是一个pair,两个数  | 
unordered_set, unordered_map, unordered_multiset, unordered_multimap, 哈希表
好处:和上面类似,增删改查的时间复杂度是 O(1)
区别:不支持 lower_bound()/upper_bound() 的排序操作, 迭代器的++,–
bitset, 圧位
(位存储,状态压缩),可以省存储空间(省8位空间,节省1/8存储)
1  | bitset<10000> s;  | 
参考资料
【视频:1.8 STL、位运算、常用库函数 - 49min左右】
【视频:第二章 数据结构(三)常用STL 1h10min左右】
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 AriesfunのBlog!
 评论




