首页 > 编程开发 > C类语言    日期:2020-05-26 / 来自互联网 / 浏览

同样是O(n)复杂度,但是经过不严谨 测试,使用库函数的速度远超for循环的遍历找最值

/*
param begin : 序列起始地址(迭代器)
param end  : 序列结束地址(迭代器)
return   : 序列中最小元素地址(迭代器)
*/
min_element(begin, end);

/*
param begin : 序列起始地址(迭代器)
param end  : 序列结束地址(迭代器)
return   : 序列中最大元素地址(迭代器)
*/
max_element(begin, end);

注意:

接收的参数是容器的首尾地址(迭代器)(可以是一个区间)
返回的是最值元素的地址(迭代器),需要减去序列头以转换为下标

示例:


C++ min/max_element 函数用法详解

#include <iostream>
#include <algorithm>

using namespace std;
#define len 7

int main()
{
	int a[7] = {11, 4, 51, 41, 91, 98, 10};
	int min_idx = min_element(a, a+len) - a;
	int max_idx = max_element(a, a+len) - a;
	cout<<min_idx<<" "<<a[min_idx]<<endl;
	cout<<max_idx<<" "<<a[max_idx]<<endl;
	
	return 0;
}

以上所述是小编给大家介绍的C++ min/max_element 函数用法详解,希望对大家有所帮助!

觉得上面的内容有用吗?快来点个赞吧!

点赞() 我要打赏

温馨提示 : 本站内容来自会员投稿以及互联网,所有源码及教程均为作者总结编辑,请大家在使用过程中提前做好备份,以免发生无法预知的错误,源码类教程请勿直接用于生产环境!

 可能感兴趣的文章