目录
算法概述
常用遍历算法for_each
常用遍历算法transform
常用查找算法find
常用查找算法find_if
常用查找算法adjacent_find
常用查找算法binary_search
常用查找算法count
常用查找算法count_if
算法概述
算法主要是由头文件 组成
是所有STL头文件中最大的一个,范围涉及到比较、交换、查找、遍历操作、复制、修改等等。体积很小,只包括几个在序列上面进行简单数学运算的模板函数
定义了一些模板类用以声明函数对象。
常用遍历算法for_each
for_each //遍历容器
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
编译运行
功能描述:
搬运容器到另一个容器中
函数原型:
transform(iterator beg1, iterator end1, iterator beg2, func);
//beg1源容器开始迭代器
//end1源容器结束选代器
//beg2目标容器开始迭代器
//_func函数或者函数对象
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
编译运行
常用查找算法find
查找指定元素,找到返回指定元素的迭代器,找不到返回结束迭代器end()
find//查找元素
find if//按条件查找元素
adjacent find//查找相邻重复元素
binary_search//二分查找法
count//统计元素个数
count if//按条件统计元素个数
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
常用查找算法find_if
find if(iterator beg, iterator end,Pred);// 按值查找元素,找到返回指定位置迭代器,找不到返回结束迭代器位置
// beg开始选代器
//end 结束选代器
//_Pred函数或者谓词(返回bool类型的仿函数)
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
编译运行
常用查找算法adjacent_find
adjacent find(iterator beg, iterator end);
//查找相邻重复元素,返回相邻元素的第一个位置的选代器
// beg开始选代器
//end结束选代器
#include
#include
编译运行
找到元素: 6
常用查找算法binary_search
bool binary_search(iterator beg, iterator end, value);
//查找指定的元素,查到返true 否则false
//注意在无序序列中不可用
// beg开始选代器//end结束选代器
// value 查找的元素
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
常用查找算法count
count(iterator beg, iterator end, value);
// 统计元素出现次数
// beg开始选代器//end结束选代器
// value统计的元素
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
编译运行
常用查找算法count_if
count if(iterator beg, iterator end, Pred):
// 按条件统计元素出现次数
// beg开始迭代器
//end结束选代器
//_Pred谓词
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
编译运行