一个寻找数组中第二大数字的 Java 程序
要找到给定数组的第二大元素,首先,对数组进行排序。
对数组进行排序
- 比较数组的前两个元素
- 如果第一个元素大于第二个元素,就交换它们。
- 然后,比较第 2 和第 3 个元素,如果第二个元素大于第三个元素,就交换它们。
- 一直重复此过程,直到数组结束。
对数组进行排序后,打印数组末尾的第二个元素。
示例
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
广告