algorithm头文件里的使用函数

来源:互联网 发布:舆情软件销售招聘 编辑:程序博客网 时间:2024/05/02 01:44

非修改性序列操作(12个)

循环 

 对序列中的每个元素执行某操作for_each()


查找

在序列中找出某个值的第一次出现的位置find()

       在序列中找出符合某谓词的第一个元素find_if()

      在序列中找出一子序列的最后一次出现的位置find_end()

在序列中找出第一次出现指定值集中之值的位置find_first_of()

在序列中找出相邻的一对值adjacent_find()


计数

在序列中统计某个值出现的次数count()

在序列中统计与某谓词匹配的次数count_if()

比较

找出两个序列相异的第一个元素mismatch()

两个序列中的对应元素都相同时为真equal()

搜索

在序列中找出一子序列的第一次出现的位置search()

在序列中找出一值的连续n次出现的位置search_n()

修改性序列操作(27个)

复制

从序列的第一个元素起进行复制copy()

从序列的最后一个元素起进行复制copy_backward()

交换

交换两个元素swap()

交换指定范围的元素swap_ranges()

交换由迭代器所指的两个元素iter_swap()

变换

将某操作应用于指定范围的每个元素transform()

替换

用一个给定值替换一些值replace()

替换满足谓词的一些元素replace_if()

复制序列时用一给定值替换元素replace_copy()

复制序列时替换满足谓词的元素replace_copy_if()

填充

用一给定值取代所有元素fill()

用一给定值取代前n个元素fill_n()

生成

用一操作的结果取代所有元素generate()

用一操作的结果取代前n个元素generate_n()

删除

删除具有给定值的元素remove()

删除满足谓词的元remove_if()

复制序列时删除具有给定值的元素remove_copy()

复制序列时删除满足谓词的元素remove_copy_if()

唯一

删除相邻的重复元素unique()

复制序列时删除相邻的重复元素unique_copy()

反转

反转元素的次序reverse()

复制序列时反转元素的次序reverse_copy()

环移

循环移动元素rotate()

复制序列时循环移动元素rotate_copy()

随机

采用均匀分布来随机移动元素random_shuffle()

划分

将满足某谓词的元素都放到前面partition()

将满足某谓词的元素都放到前面并维持原顺序stable_partition()

序列排序及相关操作(27个)

排序

以很好的平均效率排序sort()

排序,并维持相同元素的原有顺序stable_sort()

将序列的前一部分排好序partial_sort()

复制的同时将序列的前一部分排好序partial_sort_copy()

n个元素

将第n各元素放到它的正确位置nth_element()

二分检索

找到大于等于某值的第一次出现lower_bound()

找到大于某值的第一次出现upper_bound()

找到(在不破坏顺序的前提下)可插入给定值的最大范围equal_range()

在有序序列中确定给定元素是否存在binary_search()

归并

归并两个有序序列merge()

归并两个接续的有序序列inplace_merge()

有序结构上的集合操作

一序列为另一序列的子序列时为真includes()

构造两个集合的有序并集set_union()

构造两个集合的有序交集set_intersection()

构造两个集合的有序差集set_difference()

构造两个集合的有序对称差集(并-交)set_symmetric_difference()

堆操作

向堆中加入元素push_heap()

从堆中弹出元素pop_heap()

从序列构造堆make_heap()

给堆排序sort_heap()

最大和最小

两个值中较小的min()

两个值中较大的max()

序列中的最小元素min_element()

序列中的最大元max_element()

词典比较

两个序列按字典序的第一个在前lexicographical_compare()

排列生成器

按字典序的下一个排列next_permutation()

按字典序的前一个排列prev_permutation()


原创粉丝点击