- 2
- 0
- 约1.41万字
- 约 68页
- 2018-05-24 发布于河北
- 举报
C _STL详解print
STL算法 已序区间算法 所作用的区间以按某种准则排序 名称 作用 binary_serach() 判断区间内是否包含某个元素 includes() 判断区间内的每个元素是否都包含在另一个区间中 lower_bound() 搜寻第一个“大于等于给定值”的元素 upper_bound() 搜寻第一个“大于给定值”的元素 equal_range() 返回“等于给定值”的元素构成的区间 merge() 将两个区间的元素合并 set_union() 求两个区间的并集 set_intersection() set_difference() 求两个区间的差集 … … STL算法 已序区间算法 bool binary_serach (beg, end, value) bool binary_serach (beg, end, value, op) 判断已序区间[beg, end)内是否包含“和value相等”的元素 op可以作为排序准则 返回值只说明搜寻的值是否存在,不指明位置 调用者必须确保区间已序 复杂度:使用随机存取迭代器为O(logn),否则是O(n) 示例:bserach STL算法 已序区间算法 lower_bound (beg, end, value) upper_bound (beg, end, value) lower_bound (beg, end, value,op) upper_bound (beg, end, value,op) lower_bound()返回第一个大于等于value的元素位置,既可以插入value且不破坏区间已序性的第一个位置 upper_bound()返回第一个大于value的元素位置,既可以插入value且不破坏区间已序性的最后一个位置 op可以作为排序准则 调用者必须确保区间已序 复杂度:使用随机存取迭代器为O(logn),否则是O(n) 示例:bound STL算法 数值算法 以不同的方式组合数值元素 #include numeric 名称 作用 accumulate() 组合所有元素(求和,求积,…) inner_product() 组合两区间内的所有元素的内积 adjacent_difference() 将每个元素和其前一元素组合 partial_sum() 将每个元素和其先前所有元素组合 STL算法 数值算法 accumulate( beg, end, initValue) accumulate( beg, end, initValue,op) 对于序列:a1, a2, a3, … 第一种形式计算initValue + a1 + a2 + a3 + … 第二种形式计算initValue op a1 op a2 op a3 op … 示例:accu STL算法 数值算法 inner_product( beg1, end1, beg2, initValue) inner_product( beg1, end2, beg2,initValue,op1,op2) 对于序列:a1, a2, a3, …;b1, b2, b3, … 第一种形式计算initValue + (a1*b1) + (a2*b2) + (a3*b3) + … 第二种形式计算initValue op1 (a1 op2 b1) op1 (a2 op2 a2) op … 示例:inner * 什么是旋转元素次序? STL容器 map/multimap 内部存储结构 7 4 9 2 5 8 11 1 3 6 10 12 y y x y q y w x z y q z STL容器 map/multimap 构造、拷贝和析构 操作 效果 map c 产生空的map map c1(c2) 产生同类型的c1,并复制c2的所有元素 map c(op) 以op为排序准则产生一个空的map map c(beg,end) 以区间[beg,end]内的元素产生一个map map c(beg,end,op) 以op为排序准则,以区间[beg,end]内的元素产生一个map ~ map() 销毁所有元素并释放内存。 其中map可以是下列形式 mapkey,value 一个以less()为排序准则的map, mapkey,value,op 一个以op为排序准则的map STL容器 map/multimap 非变动性操作 操作 效果 c.size() 返回元素个数 c.empty() 判断容器是否为空 c.max_size() 返回元素最大可能数量 c1==c2 判断c1是否等于c2 c1!=c2 判断c1是否不等于c2 c1c2 判断c1是否小于c2 c1c2 判断c1是否大于c2 c1=c2 判断c1是否大于等于c2 c1=c2 判断c1是否小于等
您可能关注的文档
- 9_Linux下文件与目录操作(二).pptx
- 9九思品期中考试卷.doc
- 9、过渡元素(Ⅰ)摘要.ppt
- 9月3日抗战胜利日英文.doc
- a probe into the errors in chinese junior students’ efl writing论文.doc
- a spnet课程设计报告.doc
- A1-直流电机控制实验报告重点.docx
- ab+a-,f-型星状支化高分子的结构参数研究论文.doc
- acca在中国的就业前景.doc
- ACT环保采购研讨会..ppt
- 基于LSTM模型的沪深300指数收益率预测研究:方法、实践与展望.docx
- 肿瘤靶向性普鲁兰基自组装纳米药物载体:构建、性能与应用前景.docx
- 气质联用技术:解锁茶叶品质鉴定的密码.docx
- 导游大赛文化元素整理稿之民族传统节日.pptx
- 雾封层:预防性养护的效能剖析与基材性能深度探究.docx
- 不同填闲模式对温室黄瓜生长及土壤环境的影响探究.docx
- DNA甲基化:解锁精神病发病机制与治疗新靶点的密码.docx
- 石墨烯与碳纳米管协同增强聚酰胺6复合纤维的制备工艺与性能优化研究.docx
- 中小企业供应链金融融资决策深度剖析与案例启示.docx
- 肝性脑病的临床特征剖析与预后相关因素探究.docx
原创力文档

文档评论(0)