C++ Library - <algorithm>
算法简介
algorithm库提供了几个可用于各种目的的函数,例如搜索,排序,计数,操作等。 这些函数在元素范围上运行,范围定义为[first, last) 。
来自的函数
以下是
成员函数 (Member functions)
Sr.No. | 方法和描述 |
---|---|
1 | algorithm::adjacent_find() 查找两个相同的连续元素的第一个匹配项,如果相同的元素连续存在则返回指向第一个元素的迭代器,否则返回指向最后一个元素的迭代器。 |
2 | algorithm::adjacent_find() 查找两个相同的连续元素的第一个匹配项,如果相同的元素连续存在则返回指向第一个元素的迭代器,否则返回指向最后一个元素的迭代器。 |
3 | algorithm::all_of() 如果谓词对第一个到最后一个范围内的所有元素返回true,则返回true。 |
4 | algorithm::any_of() 如果谓词为第一个到最后一个范围内的任何元素返回true,则返回true。 |
5 | algorithm::binary_search() 测试值是否以排序顺序存在。 |
6 | algorithm::binary_search() 测试值是否以排序顺序存在。 |
7 | algorithm::copy() 将一系列元素复制到新位置。 |
8 | algorithm::copy_backward() 以反向顺序将一系列元素复制到新位置。 |
9 | algorithm::copy_if() 如果谓词对值返回true,则将一系列元素复制到新位置。 |
10 | algorithm::copy_n() 将前n个数字复制到新位置。 |
11 | algorithm::count() 返回范围内值的出现次数。 |
12 | algorithm::count_if() 返回满足条件的范围的值的出现次数。 |
13 | algorithm::equal() 测试两组元素是否相等。 |
14 | algorithm::equal() 测试两组元素是否相等。 |
15 | algorithm::equal_range() 返回与特定键匹配的元素范围。 |
16 | algorithm::equal_range() 返回与特定键匹配的元素范围。 |
17 | algorithm::fill() 为一系列元素指定特定值。 |
18 | algorithm::fill_n() 将值赋给第一个指向的序列的前n个元素。 |
19 | algorithm::fill_n() 将值赋给第一个指向的序列的前n个元素。 |
20 | algorithm::find() 查找元素的第一个匹配项。 |
21 | algorithm::find_end() 查找元素的最后一次出现。 |
22 | algorithm::find_end() 查找元素的最后一次出现。 |
23 | algorithm::find_first_of() 返回(first1,last1)范围内与first2,last2中的任何元素匹配的第一个元素的迭代器。 |
24 | algorithm::find_first_of() 返回(first1,last1)范围内与first2,last2中的任何元素匹配的第一个元素的迭代器。 |
25 | algorithm::find_if() 查找满足条件的元素的第一个匹配项。 |
26 | algorithm::find_if_not() 查找满足条件的元素的最后一次出现。 |
27 | algorithm::for_each() 在范围的每个元素上应用提供的函数。 |
28 | algorithm::generate() 将连续调用gen返回的值分配给first到last范围内的元素。 |
29 | algorithm::generate_n() 将对gen的连续调用返回的值分配给第一个指向的序列的前n个元素。 |
30 | algorithm::generate_n() 将对gen的连续调用返回的值分配给第一个指向的序列的前n个元素。 |
31 | algorithm::includes() 测试第一组是否是另一组的子集。 |
32 | algorithm::includes() 测试第一组是否是另一组的子集。 |
33 | algorithm::inplace_merge() 合并两个已排序的序列。 |
34 | algorithm::inplace_merge() 合并两个已排序的序列。 |
35 | algorithm::is_heap() 测试给定序列是否为max heap。 |
36 | algorithm::is_heap() 测试给定序列是否为max heap。 |
37 | algorithm::is_heap_until() 查找序列中违反最大堆条件的第一个元素。 |
38 | algorithm::is_heap_until() 查找序列中违反最大堆条件的第一个元素。 |
39 | algorithm::is_partitioned() 测试范围是否已分区。 |
40 | algorithm::is_permutation() 测试序列是否是其他序列的排列。 |
41 | algorithm::is_permutation() 测试序列是否是其他序列的排列。 |
42 | algorithm::is_sorted() 测试范围是否排序。 |
43 | algorithm::is_sorted() 测试范围是否排序。 |
44 | algorithm::is_sorted_until() 从序列中查找第一个未排序的元素。 |
45 | algorithm::is_sorted_until() 从序列中查找第一个未排序的元素。 |
46 | algorithm::iter_swap() 交换两个迭代器指向的对象的值。 |
47 | algorithm::lexicographical_compare() 测试一个范围是否在字典上比另一个范围小。 |
48 | algorithm::lexicographical_compare() 测试一个范围是否在字典上比另一个范围小。 |
49 | algorithm::lower_bound() 查找不小于给定值的第一个元素。 |
50 | algorithm::lower_bound() 查找不小于给定值的第一个元素。 |