C++數組、vector求最大值最小值和下標
可以用max_element()及min_element()函數,二者返回的都是迭代器或指針。
頭文件:
#include<algorithm>
一.求數組的最大值或最小值
1、vector容器
例 vector<int> vec
最大值:
int maxValue = *max_element(v.begin(),v.end());
最小值:
int minValue = *min_element(v.begin(),v.end());
2、普通數組
例 a[]={1,2,3,4,5,6};
最大值:
int maxValue = *max_element(a,a+6);
最小值:
int minValue = *min_element(a,a+6);
2.求數組最大值最小值對應的下標
1、vector容器
例 vector<int> vec
最大值下標:
int maxPosition = max_element(v.begin(),v.end()) - v.begin();
最小值下標:
int minPosition = min_element(v.begin(),v.end()) - v.begin();
2、普通數組
例 a[]={1,2,3,4,5,6};
最大值下標:
int maxPosition = max_element(a,a+6) - a;
最小值下標:
int minPosition = min_element(a,a+6) - a;
注意:返回的是第一個最大(小)元素的位置。