#include <algorithm>
是C++中一个常用的预处理指令,它包含了algorithm
库。这个库提供了大量用于操作序列(例如数组、向量、列表等容器)的通用算法,这些算法包括查找、排序、复制、移动、修改和其他操作。以下是algorithm
库中一些常用函数接口的概述:
-
std::sort(begin, end)
:对序列进行排序。begin
和end
是序列的起始和结束迭代器。 -
std::stable_sort(begin, end)
:对序列进行稳定排序(保持相等元素的相对顺序)。 -
std::reverse(begin, end)
:反转序列中的元素顺序。 -
std::find(begin, end, value)
:查找序列中第一个等于value
的元素。如果找到,返回指向该元素的迭代器,否则返回end
。 -
std::count(begin, end, value)
:计算序列中等于value
的元素个数。 -
std::min_element(begin, end)
:查找序列中的最小元素。返回指向最小元素的迭代器。 -
std::max_element(begin, end)
:查找序列中的最大元素。返回指向最大元素的迭代器。 -
std::copy(source_begin, source_end, dest_begin)
:从源序列复制元素到目标序列。返回指向目标序列末尾的迭代器。 -
std::move(source_begin, source_end, dest_begin)
:将源序列的元素移动到目标序列。 -
std::remove(begin, end, value)
:移除序列中所有等于value
的元素。返回指向新序列末尾的迭代器。 -
std::unique(begin, end)
:移除序列中所有连续重复的元素。返回指向新序列末尾的迭代器。 -
std::replace(begin, end, old_value, new_value)
:将序列中所有等于old_value
的元素替换为new_value
。 -
std::fill(begin, end, value)
:将序列中的所有元素设置为value
。 -
std::for_each(begin, end, function)
:对序列中的每个元素应用function
。
这只是algorithm
库中众多函数的一部分。在实际编程中,这个库为处理序列数据提供了非常强大的功能。使用这些通用算法可以简化代码,提高代码的可读性和可维护性。