定义一个最大 和第二大的数
每次循环都判断数组中是否有比最大的数大的有则交换两者的值
同时 把原来最大数的值赋值给第二大的
public class SecondMax {
public static int FindSecMax(int[] data) {
int count = data.length;
int maxnumber = data[0];
int sec_max = Integer.MIN_VALUE;
for(int i = 1;i<count;i++) {
if(data[i]>maxnumber) {
sec_max = maxnumber;
maxnumber=data[i];
}
else {
if(data[i]>sec_max)
sec_max = data[i];
}
}
return sec_max;
}
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));
}
}
原文地址:http://blog.51cto.com/12509153/2162755
时间: 2024-10-11 19:11:01