Java程式查詢陣列中第二小的數字
要查詢給定陣列中第二小的元素,首先要對陣列進行排序。
陣列排序
- 比較陣列的前兩個元素
- 如果第一個元素大於第二個元素,則交換它們。
- 然後,比較第二個和第三個元素,如果第二個元素大於第三個元素,則交換它們。
- 重複此操作直到陣列結束。
排序陣列後,列印陣列的第二個元素。
示例
public class SmallestNumberInAnArray { public static void main(String args[]){ int temp, size; int array[] = {10, 20, 25, 63, 96, 57}; size = array.length; for(int i = 0; i<size; i++ ){ for(int j = i+1; j<size; j++){ if(array[i]>array[j]){ temp = array[i]; array[i] = array[j]; array[j] = temp; } } } System.out.println("2nd Smallest element of the array is:: "+array[0]); } }
輸出
The 2nd Smallest element of the array is:: 10
另一種解決方案
您也可以使用java.util.Arrays類的sort方法對給定陣列的元素進行排序,然後列印陣列的第二個元素。
示例
import java.util.Arrays; public class LargestNumberSample { public static void main(String args[]){ int array[] = {10, 20, 25, 63, 96, 57}; int size = array.length; Arrays.sort(array); System.out.println("sorted Array ::"+Arrays.toString(array)); int res = array[1]; System.out.println("2nd smallest element is ::"+res); } }
輸出
sorted Array ::[10, 20, 25, 57, 63, 96] largest element is ::20
廣告