Java程序查找数组中的第二大数字
要查找给定数组的第二大元素,首先,对数组进行排序。
排序数组
比较数组的前两个元素
如果第一个元素大于第二个元素,则将其交换。
然后,如果第二个元素大于第三个元素,则比较第二个和第三个元素。
重复此操作,直到数组结尾。
对数组排序后,从数组末尾打印第二个元素。
示例
public class ThirdLargestNumberInAnArray { 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("Third second largest number is:: "+array[size-2]); } }
输出结果
Third second largest number is:: 63
另一种解决方案
您还可以使用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[size-2]; System.out.println("2nd largest element is ::"+res); } }
输出结果
sorted Array ::[10, 20, 25, 57, 63, 96] 2nd largest element is ::63