文章目录
algorithm
不修改内容
adjacent_find
1.(first,last)寻找从[first,last)第一组相邻相同,返回前一个元素的迭代器
2.(first,last,bool func)寻找从[first,last)第一组相邻且func为true,返回前一个元素的迭代器
[数组,vector均可,迭代器用auto或对应STL的iterator存储]
[iterator 可赋给指针,可用*取内容]
[bool func:两个形参,lambda表达式]
all_of
1.(first,last,bool func)设置一个测试条件,如果区间内的所有元素都符合测试函数的条件就返回true,如果空间等于empty或者不符合测试条件,返回false。
any_of
1.(first,last,bool func)设置一个测试条件,如果区间内有一个元素符合测试函数的条件就返回true,否则返回false。
count
1.(first,last,value)value为询问的元素,返回区间内目标出现的次数
equal
1.(begin1,end1,begin2)截出[begin,end),将它从begin2开始一项一项比较,(begin1对应begin2),直到比完都相同返回true,否则false;
2.(begin1,end1,begin2,end2)将两段元素逐个比较,其余同上
find
1.(first,last,value)value为询问的元素,返回区间内目标第一次出现的迭代器
find_end
1.(begin1,end1,begin2,end2)截出母段[begin1,end1),和子段[begin2,end2),查找
子段在母段中的出现情况,返回最后一次出现时,指向首元素(母段中)的迭代器
2.(begin1,end1,begin2,end2,bool func)使用谓词,在查找对比时,只要子段母段相应的两个元素作为func参数能使得func为true,则查找成功,即子段的这一元素在母段中
find_first_of
1.(begin1,end1,begin2,end2)截出母段[begin1,end1),和子段[begin2,end2),在母段中查找任意一个子段元素的首位置,返回指向这位置的迭代器
2.添加bool func参数,和上个函数类比。
(使用谓词的find_end和find_first_of可以用来不分大小写地查找)
find_if
1.(first,last,bool func)设置一个测试条件,查找区间内首个符合条件的元素,返回指向它的迭代器。
find_if_not
2.(first,last,bool func)设置一个测试条件,查找区间内首个不符合条件的元素,返回指向它的迭代器
for_each
1.(first,last,func)遍历区间,对区间每一元素a,执行func(a)
mismatch
2.(begin1,end1,begin2)将begin1,end1确定的区间移到begin2位置,一一向后比对,直到不相同的两个元素出现,返回指向这两个元素的迭代器构成的pair
3. 添加使用谓词,同上类比。
(参考equal)
none-of
1.(first,last,bool func)设置一个测试条件,如果区间内所有元素都不符合测试函数的条件就返回true,否则,返回false。
search
1.参考find_end,唯一不同在于find_end是最后一次出现,search是首次出现
search_n
1.(first,last,num,obj)在区间内寻找首次出现num个obj的位置,返回指向该位置的迭代器
2.(first,last,num,obj,bool func)使用谓词
再也不信百度百科了,根本不全,完全不如:
http://www.cplusplus.com/