紫书 STL初步

检索

int p = lower_bound(a,a+n,x)-a;//因为是返回位置所以要减掉起始位置


Vector 不定长数组

a.size()读大小,a.resize()改变大小,a.push_back()向尾部添加元素,a.pop_back()删除最后一个元素 empty()测试是否为空

vector是模板类 所以要用vector<int> a(int a【】)或vector<double> b 这样的方式声明。

vector<int> pile[maxn] ;//每个pile【i】是一个vector 就像一个二维数组,只有第一维maxn的大小是固定的


集合:set

每个元素最多出现一次

eg:输入一个文本 输出文本中的单词 按字典序排序

思路:set保存单词集合。set集合已经从小到大排好序 stringstream得到各个单词,需要<sstream>头文件

         isalpha()判读字符是否为英文字母 是则返回非0(小写2 大写1)不是则返回0

       for(set<string>::iterator it = dict.begin();it!=dict.end();++it)


映射:map

从key到value的映射  用map<string,int> month_name 表示“月份名字到月份编号”的映射 然后用month_name["July"]=7这样的方式来赋值。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值