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
广告