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 输出