【发布时间】:2017-11-05 11:59:45
【问题描述】:
我有一个包含数字的数组。
我在 O(N) 中得到了这个数组的两个最小值(可以是相同的数字),但 我不知道如何获得这两个值的索引。
例如:在 {1,2,3,1,5} 中,答案将是索引 0 和索引 3。这是我正在使用的代码:
public static void minMin(int arr[]){
int min1 = weights[0], min2 = weights[1];
if(min1 > min2){
int temp = min1;
min1 = min2;
min2 = temp;
}
for (int i = 2; i < weights.length; i++) {
if(weights[i] < min1){
int temp = min1;
min1 = weights[i];
min2 = temp;
}else if(weights[i] < min2){
min2 = weights[i];
}
}
}
【问题讨论】:
-
记录在案:我更新了我的答案;事情变得更简单了。但同样,我没有放弃代码,因为我不是来做你的作业的。我只是想帮你自己做。