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