c++11之 algorithm 算法库新增 minmax_element同时计算最大值和最小值

0.时刻提醒自己

Note: vector的释放

1. minmax_element 功能

寻找范围 [first, last) 中最小和最大的元素。

2. 头文件

#include <algorithm>

3. 异常

算法无法分配内存,则抛出 std::bad_alloc

4.Note

此算法不仅在效率上异于 std::make_pair(std::min_element(), std::max_element()) ,而且此算法寻找最后的最大元素,而 std::max_element 寻找首个最大元素。

5. 用法

5.1 代码

std::vector<int> v(7);
std::iota(v.begin(), v.end(), 10);

auto result = std::minmax_element(v.begin(), v.end());
// 输出首次出现的最小元素
std::cout << "min element is: " << *result.first << '\n';

// 输出首次出现的最大元素
std::cout << "max element is: " << *result.second << '\n';

5.2 输出

posted @ 2020-10-21 22:21  mohist  阅读(597)  评论(0编辑  收藏  举报