84669 人学习
152542 人学习
20005 人学习
5487 人学习
7821 人学习
359900 人学习
3350 人学习
180660 人学习
48569 人学习
18603 人学习
40936 人学习
1549 人学习
1183 人学习
32909 人学习
走同样的路,发现不同的人生
min=j;导致自己和自己交换,没有任何作用;
public class Selection { public static void sort(int[] args) { int n = args.length; for (int i = 0;i < n;i++){ int min = i; for (int j = i+1;j < n;j++) { if (args[j] < args[min]) { min = j; } } exch(args, i, min); } } private static void exch(int[] a, int i, int j) { int t = a[i]; a[i] = a[j]; a[j] = t; } }
你定义这个 min变量多此一举,把 min的定义去掉,数组中用到min的地方 用 i 代替即可,min =j 这样每次都是自己和自己交换,或者 你把min=j的定义放在数组值交换之后。
min=j;导致自己和自己交换,没有任何作用;
你定义这个 min变量多此一举,把 min的定义去掉,数组中用到min的地方 用 i 代替即可,min =j 这样每次都是自己和自己交换,或者 你把min=j的定义放在数组值交换之后。