Vector求最大值最小值

QVector <double> data {11.0, 44.0, 22.0, 33.0, 10.0,65.0};//表示最大值:
auto max = std::max_element(std::begin(data), std::end(data));
//最小值表示:
auto min = std::min_element(std::begin(data), std::end(data));
//直接赋值表示
double biggest = *max;
double smallest = *min;
//最大值和最小值的位置的表示方式:
auto positionmax = std::distance(std::begin(data),max);
auto positionmin = std::distance(std::begin(data),min);
int posmax = positionmax;
int posmin = positionmin;

qDebug()<<"biggest = "<<biggest;
qDebug()<<"smallest = "<<smallest;
qDebug()<<"pos ="<<posmax;
qDebug()<<"posmin = "<<posmin;

这里用的QVector,std::vector应该也可以

原文地址:https://www.cnblogs.com/judes/p/12362660.html

时间: 2024-10-12 20:28:02

Vector求最大值最小值的相关文章

MapReduce求最大值最小值问题

import java.io.File; import java.io.IOException; import org.apache.hadoop.conf.Configuration; import org.apache.hadoop.fs.Path; import org.apache.hadoop.io.Text; import org.apache.hadoop.mapred.JobConf; import org.apache.hadoop.mapreduce.Job; import

数组中简便方法求最大值,最小值,平均值,求和,和个数

//获取数组中的最大值和最小值 @min.self     NSArray *array = @[@4, @84, @2];     NSLog(@"max = %@", [array valueForKeyPath:@"@max.self"]);         //平均值和求和    NSLog(@"%@", [array valueForKeyPath:@"@sum.self"]); //平均值和求平均值    NSLo

排序,求最大值最小值

1.假设法,假设第一个值是最大值和最小值 var arr = [12,24,15,23,78,34,21,67,999,-1,0]; var i=1,max=arr[0],min=arr[0] ; for(i;i<arr.length;i++){ if(arr[i]>max){ max=arr[i]; } if(arr[i]<min){ min=arr[i] } } console.log(max); console.log(min); 2.sort,数组的sort的方法,sort的回调

双栈队列实现快速获取队列最大值最小值

1 思路: 自己实现一个栈,其中成员为标准库中的栈,一个存放全部的元素,一个存放最小元素,一个存放最大元素. 使用自己实现的栈来实现一个求最大值最小值的队列,其中包含两个成员,一个作为出队的栈,一个作为入队的栈. 2 C++实现代码: #include<iostream> #include<stack> #include<cstdlib> using namespace std; template <typename T> class minmaxStack

求数组元素的最大值最小值

这是编程之美上的一个题目: 一般的做法: void main() { int a[5]={78,63,78,67,18}; int min=0,max=0; min=max=a[0]; for(int i=0;i<5;i++) { if(min>a[i]) min=a[i]; if(max<a[i]) max=a[i]; } printf("%d,%d\n",max,min); } 这种方法总共比较了2*N次 如何降低比较次数呢? 我在这里着重记录一下分冶法的做法:

数组用法----求最大值、最小值和平均数

public class d { /** * @param args */ public static void main(String[] args) { // TODO 自动生成的方法存根 //数组 求最大值.最小值.平均分 int a[]={70,80,90,75,84,88}; int n; int min =100; int max = 1; for(n=0;n<6;n++) { if(max<a[n]) { max=a[n];//循环比较max和a[n]的大小 }else if(m

分治法求数组的最大值最小值

实现求数组的最大值最小值,蛮力法要容易的多.本着重在体验分治法的思想的原则: 1 int main(void) 2 { 3 void Maxmin(int a[],int low,int high,int maxmin[2]); 4 int a[10],maxmin[2]; 5 6 printf("Enter 10 integer numbers:\n"); 7 for(int i=0;i<10;i++) 8 scanf("%d",a+i); 9 10 Max

分组求最大值,最小值 使用开窗函数经验总结

select distinct TT.prod_id, tt.creteTime, tt.inspection_time, tt.cnt from (select s.prod_id, min(s.datetime_created) over(partition by s.prod_id) as creteTime, max(s.inspection_time) over(partition by s.prod_id) as inspection_time, sum(s.complete_cou

POJ 3264 Balanced Lineup【线段树区间查询求最大值和最小值】

Balanced Lineup Time Limit: 5000MS   Memory Limit: 65536K Total Submissions: 53703   Accepted: 25237 Case Time Limit: 2000MS Description For the daily milking, Farmer John's N cows (1 ≤ N ≤ 50,000) always line up in the same order. One day Farmer Joh