我有一个非常微不足道的问题,但我在互联网上找不到任何内容。 我需要在存储最小值的一维数组中找到索引。 到目前为止我发现的所有东西只告诉你最小值的值。 我尝试的代码是:
int min_element_loc (double a[]){
double first, last;
first = a[0];
last = a[255];
for(int i = 0;i<256;i++)
{
if (first==last) return i;
double smallest = first;
while (++first!=last)
smallest=first;
return i;
}
return 0;
}
(数组中有256个元素:我知道它很乱,但它永远不会改变,程序不是最终版本)
由于
答案 0 :(得分:3)
使用算法标题中的std :: min_element。
#include <vector>
#include <algorithm>
#include <iostream>
int main() {
std::vector<double> vals = { 1.0, 2.0, 0.5, 4.2 };
auto iter = std::min_element(vals.begin(), vals.end());
auto idx = iter - vals.begin();
std::cout << idx << "\n";
return 0;
}