常用C++函数罗列及详解(algorithm篇)

一、非修改性序列操作 Non-modifying sequence operations:

1) bool all_of(序列.begin(), 序列.end(), 一元检测函数) C++ 11

​ 函数功能:*Test condition on all elements in range *

​ 用来检测指定范围内的所有值是否符合某个条件,检测函数从序列开始逐个接收值,最终返回bool;如果范围内所有值符合条件返回true,如果范围为空或者不符合,则返回false。

2) bool any_of(序列.begin(), 序列.end(), 一元检测函数) C++ 11

​ 函数功能:Test if any element in range fulfills condition

​ 用来检测指定范围内是否存在符合某个条件的值,检测函数从序列开始逐个接收值,最终返回bool;如果范围内至少存在一个值符合条件返回true,如果范围为空或者不符合,则返回false。

题外话:这里的一元函数,简单的话可以直接写在形参里面,从官网拔下来的例子:

any_of(foo.begin(), foo.end(), [](int i){return i<0;}) 

3)bool none_of(序列.begin(), 序列.end(), 一元检测函数) C++ 11

函数功能:Test if no elements fulfill condition

​ 用来检测指定范围内所有是否都不符合某个条件,检测函数从序列开始逐个接收值,最终返回bool;如果范围为空或者范围内存在一个值符合条件返回false,如果全不符合,则返回true。

参考链接:

http://www.cplusplus.com/reference/algorithm/none_of/

4)int count(序列.begin(), 序列.end(), const T& val)

函数功能:Count appearances of value in range

​ 用来计算指定范围内某个值出现的次数,遍历整个范围后,返回val出现的次数(singed intergral 类型)。

相关例题:

剑指offer - 数字在排序数组中出现的次数;数组中只出现一次的数字;数组中重复的数字;和为S的两个数字;字符流中第一个不重复的字符

参考链接:

http://www.cplusplus.com/reference/algorithm/count/

未完待续

全部评论

相关推荐

头顶尖尖的程序员:我也是面了三四次才放平心态的。准备好自我介绍,不一定要背熟,可以记事本写下来读。全程控制语速,所有问题都先思考几秒,不要急着答,不要打断面试官说话。
点赞 评论 收藏
分享
05-20 13:59
门头沟学院 Java
米黑子米黑子:你这个成绩不争取下保研?
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
07-10 12:05
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务