目录
一、基本用法
std::min_element()
和std::max_element()
是C++ STL中的函数模板,用于查找容器中的最小值和最大值。以下是它们的使用方法:
-
std::min_element()
的使用方法:- 查找一个区间内的最小元素:
std::min_element(first, last)
- 查找一个区间内的最小元素,并使用自定义比较函数:
std::min_element(first, last, comp)
- 查找一个区间内的最小元素:
-
std::max_element()
的使用方法:- 查找一个区间内的最大元素:
std::max_element(first, last)
- 查找一个区间内的最大元素,并使用自定义比较函数:
std::max_element(first, last, comp)
- 查找一个区间内的最大元素:
其中,first
和last
分别是容器的起始迭代器和终止迭代器,comp
是一个可调用对象,用于比较两个元素的大小关系。如果不指定comp
,则默认使用<
运算符进行比较。
注意:std::min_element()和 std::max_elenent() 返回的是迭代器,指向容器中的最小元素和最大元素。如果需要获取元素的值,可以使用( 运算符对迭代器进行解引用。
二、使用案例
以下是一个使用std::min_element()
和std::max_element()
的示例:
#include <algorithm>
#include <vector>
int main() {
std::vector<int> v = {3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5};
auto min_it = std::min_element(v.begin(), v.end()); // 查找最小元素
auto max_it = std::max_element(v.begin(), v.end()); // 查找最大元素
return 0;
}