max_element函数可以返回容器中的最大值。

min_element函数可以返回容器中的最小值。

函数格式为:

max_element(first,end,cmp)

min_element(first,end,cmp)

其中first和end 分别为选用的容器的范围,而cmp参数是可选参数,我们可以自己设置它的功能。

接下来我们看一个例子:

#include <algorithm>
#include <iostream>
#include <vector>
#include <cmath>
 
static bool abs_compare(int a, int b)
{
    return (std::abs(a) < std::abs(b));
}
 
int main()
{
    std::vector<int> v{ 3, 1, -14, 1, 5, 9 }; 
    std::vector<int>::iterator result;
 
    result = std::max_element(v.begin(), v.end());
    std::cout << "max element is: " << *result << '\n';
    std::cout << "max element at: " << std::distance(v.begin(), result) << '\n';
 
    result = std::max_element(v.begin(), v.end(), abs_compare);
    std::cout << "max element is: " << *result << '\n';
    std::cout << "max element (absolute) at: " << std::distance(v.begin(), result) << '\n';
}

---------结果如下----------
max element is: 9
max element at: 5
max element is: -14
max element (absolute) at: 2
Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐