C++ #include <algorithm> 库函数算法大全
<algorithm>
库是C++标准库中的一个重要组件,包含了许多通用的算法函数。以下是常用的算法函数的简要介绍:
非修改序列操作
for_each
: 对范围内的每个元素执行指定操作。count
: 统计范围内等于给定值的元素个数。count_if
: 统计范围内满足条件的元素个数。mismatch
: 找到两个范围中不相等的第一个元素。find
: 查找范围内等于给定值的第一个元素。find_if
: 查找范围内第一个满足条件的元素。find_if_not
: 查找范围内第一个不满足条件的元素。search
: 在范围内搜索子序列。
修改序列操作
copy
: 将范围内的元素复制到另一个范围。copy_if
: 将满足条件的元素复制到另一个范围。copy_n
: 将范围内的前n个元素复制到另一个范围。move
: 将范围内的元素移动到另一个范围。fill
: 用指定值填充范围。fill_n
: 用指定值填充前n个元素。transform
: 将函数应用于范围内的每个元素,并将结果存储在另一个范围。replace
: 将范围内等于指定值的元素替换为另一个值。replace_if
: 将范围内满足条件的元素替换为另一个值。swap
: 交换两个元素的值。swap_ranges
: 交换两个范围内的元素。reverse
: 反转范围内元素的顺序。rotate
: 将范围内的元素循环移动。
排序和排序操作
sort
: 对范围内的元素进行排序。partial_sort
: 对范围内的部分元素进行排序。partial_sort_copy
: 将部分排序后的元素复制到另一个范围。stable_sort
: 稳定排序,保持相等元素的相对顺序。nth_element
: 重排范围,使第n个元素处于正确位置,左边元素小于等于它,右边元素大于等于它。
二分搜索操作
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
: 返回范围内的最大元素。minmax
: 返回两个元素中的较小者和较大者。minmax_element
: 返回范围内的最小和最大元素。
这些函数提供了强大的工具来处理各种序列和集合操作,极大地提高了代码的简洁性和效率。
- 上一篇:c++const作用
- 下一篇:c++在main中声明大数组会出错吗