DESKTOP-LODEUIH_20200829-罗祥

日志

问题

问题:不用排序求次大数数
来源:周清编程题
解决:1,数组中的最大数唯一
public static void main(String[] args) {
        int data[]= {19,20,98,00,56,77,45,72,0,-1};//
//      Arrays.sort(data);
//      System.out.println((data[data.length-2]));
        int max=0;int secondMax=0;
        for(int i=0;i<data.length;i++) {
            if(data[i]>max) {
                secondMax=max;
                max=data[i];
            }
            else if(data[i]>secondMax) {
                secondMax=data[i];
            }
        }
        System.out.println(secondMax);  
    }
输出:98
2,数组中最大数不唯一
public static void main(String[] args) {
        int data[]= {19,98,98,00,56,77,45,72,0,-1};
        int max=0;int secondMax=0;
        for(int i=0;i<data.length;i++) {
            if(data[i]>max) {
                secondMax=max;
                max=data[i];
            }
            else if(data[i]>secondMax&&data[i]<max) {
                secondMax=data[i];
            }
        }
        System.out.println(secondMax);
    }
输出:77
吐槽
这道题题目的说明有点简单了,只说了求次大数,也没说别的。

标签

© 2021 成都云创动力科技有限公司 蜀ICP备20006351号-1