1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
|
* 简单选择排序 */ private static <AnyType extends Comparable<? super AnyType>> void selectedSort(AnyType[] arr) { System.out.println("原数组为: " + Arrays.toString(arr)); boolean exchange = true; for (int i = 0; i < arr.length && exchange; ++i) { exchange = false; AnyType min = arr[i]; int minIndex = i; for (int j = i+1; j < arr.length; ++j) { if (arr[j].compareTo(min) < 0) { exchange = true; min = arr[j]; minIndex = j; } } if (!exchange) { break; } arr[minIndex] = arr[i]; arr[i] = min; System.out.println(Arrays.toString(arr)); } 原数组为: [23, 1, 42, 5, 2, 23, 12] [1, 23, 42, 5, 2, 23, 12] [1, 2, 42, 5, 23, 23, 12] [1, 2, 5, 42, 23, 23, 12] [1, 2, 5, 12, 23, 23, 42] */ }
|