【发布时间】:2018-11-25 12:31:33
【问题描述】:
我正在尝试编写选择排序算法。作为算法的一部分,我需要切换数组中的 2 个值,我尝试如下:array[min] = array[i]; array[i] = array[min]; 但我相信这不会起作用,因为array[min] 已经是= 到array[i]。那么我该如何进行这种交换呢?下面是我的代码。
static int[] array = {3, 2, 1, 4, 5, 6};
static int n = 5;
static int temp;
for (int i = 0; i<=5; i++) {
int min = 0;
for (int j = i+1; j<=n; j++) {
//System.out.println(j);
if (array[j]<array[min]) {
min = j;
}
if (min != i) {
array[min] = array[i];
array[i] = array[min];
}
}
}
【问题讨论】: