|  | 
 
| 
本帖最后由 英俊男孩建坤 于 2021-10-20 21:08 编辑
x
马上注册,结交更多好友,享用更多功能^_^您需要 登录 才可以下载或查看,没有账号?立即注册  
 复制代码    private static void minMaxSelection(int[] a) {
        int n = a.length;
        for (int i = 0, j = n - 1; i < j; i++, j--) { 
            int min = i, max = i;
            int maxValue = a[max];
            for (int k = i; k <= j; k++) { 
                if (a[k] > a[max]) {
                    maxValue = a[k];
                    max = k;
                }
                else if (a[k] < a[min])
                    min = k;
            }
            swap(a, i, min);     
            if (a[min] == maxValue)    // 这个if条件要如何理解?
                swap(a, j, min);   
            else
                swap(a, j, max); 
        }
    }
    public static void swap(int[] a,int i, int j){
        int tem = a[i];
        a[i] = a[j];
        a[j] = tem;
    }
}
 
 这个if的条件要如何理解???  代码中那个注释的那个  有没有大佬解释一下
 | 
 |