stl-记录

顺序容器:vector list  deque

包含头文件<vector>,<list>,<deque>

算法头文件<algorithm>

算法 sort(a.begin(),a.end())按照从小到大查找

find查找    find_first_of 查找两对迭代器范围内相同的元素,返回第一个查找到的元素

find_if(v.begin(),v.end(),pre)  返回第一个符合pre的迭代器,返回v.end()表示未找到

写入 fill(v.beg,v.end,content)   fill_n(v.begin,number,content) 

插入迭代器  back_inserter  在没有插入空间时增加插入空间,相当去调用puch_back

向目标迭代器写入未知个数的元素copy  (v.begin,v.end,cocy_v)相当于初始化时创建的副本

replace算法 输入迭代器范围,要替换的值,替换的值  replace(v.beg,v.end,0,42 )把0替换为42

replace_copy 替换后生成新序列  输入五个参数 迭代器范围,新序列 替换值  被替换值

3种插入迭代器 :back_inserter从后面插入  front_inserter 从第一个位置插入   inserter插入到指定位置的前面

back_inserter 函数是一种插入器。插入器是一种迭代器适配器,带有一个容器参数,并生成一个迭代器,用于在指定容器中插入元素。通过插入迭代器赋值时,迭代器将会插入一个新的元素

back_inserter,创建使用 push_back 实现插入的迭代器。
front_inserter,使用 push_front 实现插入。
inserter,使用 insert 实现插入操作。除了所关联的容器外,inserter还带有第二实参:指向插入起始位置的迭代器。

流迭代器 istream_iterator        ostream_iterator 不太懂  先放着

反向迭代器 reverser_iterator  v.rbegin()   v.rend()

const 迭代器   不能修改容器的元素

按照迭代器作用范围大小,分下面五种:

1、Input iterator  输入迭代器 可读不可写 支持自增 

2、Output iterator  输出迭代器  可写不可读 支持自增

3、Forward iterator  前向迭代器  可读可写  支持自增

4、Bidirectional iterator 双向迭代器  可读可写 支持自增自减

5、Random access iterator 随机访问迭代器 读写 完整的迭代器算术运算

map set  list提供双向迭代器     deque  string  vector 提供随机访问迭代器 

list容器特有的操作:merge remove  reverse  sort splice  unique  使用方法 list  lst;lst.fun();

算法的形参模式一共四种:

alg (beg, end, other parms);
alg (beg, end, dest, other parms);
alg (beg, end, beg2, other parms);
alg (beg, end, beg2, end2, other parms);

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值