double find_min(sample &s){
double i = 0;
double min;
for (i; i < s.get_data().size() - 1; i++){
if (s.get_data().at(i) < s.get_data().at(i + 1)){
min = s.get_data().at(i);
}
else{
min = s.get_data().at(i + 1);
}
}
return min;
}
我正在尝试为填充有用户输入的 vector 找到最小值。当有一个小数时,x,它后面的所有数都比x大;该功能运行良好。
然而,当一个小于 x 的数字(我们称之为 y)出现在 x 之后时,函数返回 y。
示例 1:[23,44,55,1,66,77] 的 vector 值 -> 函数将正确返回 1;
示例 2:[23,44,55,1,3,44] 的 vector 值 -> 函数返回 3?
最佳答案
您需要将数字与最小值进行比较。您只是在寻找小于以下数字的最后一个数字,并且 3<44.
关于c++ - 需要帮助在充满用户输入的 vector 中搜索最小值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27296193/