|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
本帖最后由 英俊男孩建坤 于 2021-10-20 21:08 编辑
- 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的条件要如何理解??? 代码中那个注释的那个 有没有大佬解释一下 |
|