常见STL使用方法

常用的STL容器

vector,变长数组,倍增的思想
size()返回元素个数
empty()返回是否为空
clear()清空
front()/back()
push_back()/pop_back()
begin()/end()
string,字符串,substr(),c-str()
queue,队列,push(),什。nt(),四p()
priority_queue,优先队列,push(),top(),pop()
stack,栈,push(),top(),pop()
deque,双端队列
set,map,multiset,multimap,基于平衡二叉树(红黑树),动态维护有序序列
unorderedset,unordered_map,unor、deredmultiset,unorderedmultimap,哈希表
bitset,压位

vector具体使用

头文件:

#include <vector>

初始化:

vector<int> a;
vector<int> a(10);
定义了一个长度为10的变长数组a
vector<int> a(10, 1);
定义了一个长度为10的变长数组a,且a的每个数都为1
vector<int> a[10];
定义了一个 10个vector 的数组a;

vecotr支持的函数

a.size(); // 返回a中元素的个数 时间复杂度:O(1)
a.empty(); // 判断a是否为空 时间复杂度:O(1)
a.clear(); // 清空a
a.front()/.back(); // 返回a的 第一个 / 最后一个 元素
a.push_back()/pop_back(); // 向a的最后插入一个数 / 把a的最后一个数删掉
a.begin()/end() // vector a 的迭代器
// begin()是a的第0个数,end()是a的最后一个数的后面一个数

vector黑科技

支持比较运算(<,>,=,!=,<=,>=)


to be continued

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值