寻找数组中第二大的数字
解题思路:
先定义两个变量:一个变量用来存储数组的最大数,初始值为数组第一个数,另外一个变量存储数组元素的第二大数字,初始值为最小负整数,遍历数组并进行判断。
代码展示
public static void main(String[] args) {
// TODO Auto-generated method stub
int[] array = {7,3,19,40,4,7,1};
System.out.println("第二大数为:"+FindSecMax(array));
}
private static int FindSecMax(int[] data) {
// TODO Auto-generated method stub
int max_Number=data[0]; // 最大数
int sec_Number=Integer.MIN_VALUE; // 第二大数
for(int i=1;i<data.length;i++) {
if(data[i]>max_Number) {
// 进行交换
sec_Number = max_Number;
max_Number=data[i];
}else {
if(data[i]>sec_Number) {
sec_Number = data[i];
}
}
}
return sec_Number;
}
结果展示