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

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

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

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,并最终遍历得到最小值所在的索引。
可以看出,方法一操作的是数组的元素,丢失了它的位置信息,方法二操作的是元素所在的索引,保存位置信息。从一定程度上来说,方法二优于方法一。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章