Java数组最值,以最小值为例

时间:2022-07-27 15:13:06

求一个数组中的最小值,最简单就是遍历。

我们有两种方法,去求最小值。方法一

public static int min1(int[] array){
int minValue = array[0];
for (int i = 0; i<array.length;i++){
if (array[i]<minValue)
minValue = array[i];
}
return minValue;

}

首先,认为索引位置为0的元素为最小值,并将最小值赋值给minValue,若后面有比之更小的,则将最小值赋值给minValue,最终遍历得到最小值。

方法二

public static int min2(int[] array){
int minIndex = 0;
for (int i = 0; i<array.length;i++){
if (array[i]<array[minIndex])
minIndex = i;
}
return minIndex;
}
首先,认为最小值在索引为0 的位置上,并将最小值所在的索引赋值给minIndex,若后面有比之更小的,将更小的值所在的索引赋值给minIndex,并最终遍历得到最小值所在的索引。
可以看出,方法一操作的是数组的元素,丢失了它的位置信息,方法二操作的是元素所在的索引,保存位置信息。从一定程度上来说,方法二优于方法一。