c++STL

vector:
- v(n,ele) : 创建长度n,并且全部初始化为ele(只有在创建时可以vector< type > xx (n,ele))
- v(v1) : 拷贝v1
- v.resize(n,val) : 重新设置长度,并每个填上val值(可选),若超出capacity,自动内存分配

list:
- l.push_front(ele):ele压入头
- l.pop_front():移除头元素
- l.sort():将元素按升序排列
- l.merge(l2):将l2合并到l,l2变空
- l.reverse():反转本列表
- l.remove(ele):删除与ele相等给的元素
- l.splice(posi,l2):将l2元素移至posi处,l2变空

deque:
- d.push_front():ele压入头
- d.pop_front():移除头元素

set:
- s.insert(ele):插入ele

map:
- m[key] : 返回key的value
- m.find(key) : 返回key所在的iterator

stack:
- s.push(ele):压入ele
- s.pop()
- s.top():返回顶部元素不删除

queue:
- q.push(ele):压入ele
- q.pop()
- q.front():返回首元素不删除
- q.back():返回尾元素不删除

vector、list、deque共有:
- c.push_back(ele) : 末尾压入ele
- c.pop_back() : 移除最后一个元素
- c.assign(n,ele):删除原有元素,加入n个ele
- c.assign(begin,end):将begin~end-1元素赋给c //一般用于数组赋值给c
- c.inert(posi,ele):在posi位置插入ele,posi为迭代器 //迭代器失效
- c.front():返回首元素
- c.back():返回尾元素

(multi)set、(multi)map共有:默认<排序
- c.find(key):搜索具有key的元素,返回迭代器,没找到返回最后元素的后一个
- c.lower_bound(key):返回key第一个的迭代器
- c.upper_bound(key):返回key最后一个的后面一个迭代器
- c.count(key):返回key的数量
- c.erase(key):删除所有key元素

vector、list、deque、(multi)set、(multi)map 共有:
- c1.swap(c1) : 交换两个容器内容
- c.max_size():返回一个容器可以容纳的最大元素数量
- c.clear():删除所有元素
- c.begin():返回容器首元素迭代器
- c.end():返回容器尾元素之后位置的迭代器
- c.rbegin():返回容器尾元素的迭代器
- c.rend():返回容器首元素之前的迭代器
- c.erase(begin,end):删除begin~end-1元素,begin和end都是迭代器 //迭代器失效

所有容器共有:
- c.empty():若为空则返回true
- c.size():返回元素数量
- c1=c2:将c2拷贝到c1
- 遍历:

for(auto it=c.begin(); it!=c.end(); it++)
    cout << *it << endl;
    //it->first it->second!!!!
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值