选择排序不排序整数数组
Selection sort not sorting integer array
我正在尝试实现对整数数组进行排序的选择排序,但它并没有这样做。我不知道出了什么问题,所以也许另一双眼睛可以弄明白。
public static void main(String[] args) {
int[] array = {900, 200, 23, -3, 1, 30, 55, -70, 100, 9};
System.out.println(Arrays.toString(array));
for (int i = array.length - 1; i > 0; i--) {
int largest = 0;
for (int j = 1; j <= i; j++) {
if (array[j] > array[largest]) {
}
largest = j;
}
swap(array, largest, i);
}
System.out.println(Arrays.toString(array));
}
private static void swap(int[] arr, int i, int j) {
if (i == j)
return;
int temp = arr[i];
arr[i] = arr[j];
arr[j] = temp;
}
将largest = j
移动到if
区块
if (array[j] > array[largest]) {
largest = j;
}
我正在尝试实现对整数数组进行排序的选择排序,但它并没有这样做。我不知道出了什么问题,所以也许另一双眼睛可以弄明白。
public static void main(String[] args) {
int[] array = {900, 200, 23, -3, 1, 30, 55, -70, 100, 9};
System.out.println(Arrays.toString(array));
for (int i = array.length - 1; i > 0; i--) {
int largest = 0;
for (int j = 1; j <= i; j++) {
if (array[j] > array[largest]) {
}
largest = j;
}
swap(array, largest, i);
}
System.out.println(Arrays.toString(array));
}
private static void swap(int[] arr, int i, int j) {
if (i == j)
return;
int temp = arr[i];
arr[i] = arr[j];
arr[j] = temp;
}
将largest = j
移动到if
区块
if (array[j] > array[largest]) {
largest = j;
}