除0外,如何找到分钟。数组中的数字:
myMethod()
{
for (i - 0 to i - length)
{
int currentMin = value_at_first_Index;
if(currentMin > value_at_first_Index)
currentMin = value_at_first_Index;
}
return currentMin;
}
答案 0 :(得分:1)
int a[]={5,2,4,5,1,7,9};
int lowestIndex=0;
for(int b=1; b<7; b++)
{
if(a[b]<a[lowestIndex]) lowestIndex=b;
}
return lowestIndex;
答案 1 :(得分:1)
int FindFirstMinIndex(array)
{
int minIndex = 0;
for (int i = 1; i<array.length; i++)
if(array.elementAt(i) < array.elementAt(minIndex))
minIndex=i;
return minIndex;
}
0
)是最小值:
int minIndex = 0;
for (int i = 1; i<array.length; i++)
1
)元素而不是第一个(索引0
)开始,因为我们已经假设如果我们找不到任何值较低的值,则第一个将是最小值,并且无需在循环内将其与自身进行比较。i
)中元素的值小于目前为止记录的最小索引处元素的值:
if(array.elementAt(i) < array.elementAt(minIndex))
minIndex=i;
minIndex
变量,都保证是整个数组中找到的最小值的第一个索引(如果是重复值)。所以返回那个索引:
return minIndex;
答案 2 :(得分:0)
解决方案
public int getMin (int[] arr) { int currentMin = arr[0]; for (int i = 0; i < arr.length; i++){ if (arr[i] != 0){ currentMin = Math.min(arr[i], currentMin); }}return currentMin; }
答案 3 :(得分:-1)
将currentMin移出for循环
public int myMethod (int[] array) {
int currentMin = array[0];
for (int i = 0; i < array.length; i++){
if (array[i] != 0 && array[i]>currentMin)
currentMin=array[i];
}
return currentMin;
}