C++ 库 - <algorithm>



算法介绍

algorithm 库提供了一些可用于各种用途的函数,例如搜索、排序、计数、操作等等。这些函数操作于元素范围,范围定义为[first, last)

<algorithm> 中的函数

以下是 <algorithm> 头文件中所有方法的列表。

成员函数

序号 方法及描述
1 algorithm::adjacent_find()

查找第一次出现的两个连续且相同的元素,如果存在连续的相同元素,则返回指向第一个元素的迭代器;否则返回指向最后一个元素的迭代器。

2 algorithm::adjacent_find()

查找第一次出现的两个连续且相同的元素,如果存在连续的相同元素,则返回指向第一个元素的迭代器;否则返回指向最后一个元素的迭代器。

3 algorithm::all_of()

如果谓词对从firstlast.

4 范围内的所有元素都返回 true,则返回 true。

如果谓词对从范围内任意元素返回truefirstlast.

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 个元素赋值。first.

19 algorithm::fill_n()

为由指向的序列的前 n 个元素赋值。first.

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的连续调用返回的值赋值给从last.

29 first 到

algorithm::generate()将对范围内的元素。first.

30 first 到

algorithm::generate()将对范围内的元素。first.

31 algorithm::generate_n()

为由指向的序列的前 n 个元素赋值。

32 algorithm::generate_n()

为由指向的序列的前 n 个元素赋值。

33 algorithm::includes()

测试第一组是否为另一组的子集。

34 algorithm::includes()

测试第一组是否为另一组的子集。

35 algorithm::inplace_merge()

原位合并两个已排序的序列。

36 algorithm::inplace_merge()

原位合并两个已排序的序列。

37 algorithm::is_heap()

测试给定序列是否为最大堆。

38 algorithm::is_heap()

测试给定序列是否为最大堆。

39 algorithm::is_heap_until()

查找序列中第一个违反最大堆条件的元素。

40 algorithm::is_partitioned()

测试范围是否已分区。

41 algorithm::is_partitioned()

测试范围是否已分区。

42 algorithm::is_permutation()

测试一个序列是否为另一个序列的排列。

43 algorithm::is_permutation()

测试一个序列是否为另一个序列的排列。

44 algorithm::is_sorted()

测试范围是否已排序。

45 algorithm::is_sorted()

测试范围是否已排序。

46 algorithm::is_sorted_until()

查找序列中第一个未排序的元素。

47 algorithm::iter_swap()

交换两个迭代器指向的对象的值。

48 algorithm::iter_swap()

交换两个迭代器指向的对象的值。

49 algorithm::lexicographical_compare()

测试一个范围是否小于另一个范围(字典序)。

50 algorithm::lexicographical_compare()

测试一个范围是否小于另一个范围(字典序)。

广告