这里我有一个选择排序来从最低到最高对值进行排序,我该如何更改它以便它从最高到最低对值进行排序?
int min;
for (int i = 0; i < array.length; i++) {
// Assume first element is min
min = i;
for (int j = i + 1; j < array.length; j++) {
if (array[j] < array[min]) {
min = j;
}
}
if (min != i) {
final int temp = array[i];
array[i] = array[min];
array[min] = temp;
}
itsATextArea.append(array[i] + "\n");
}
最佳答案
只需更改代码中的符号即可
if (array[j] > array[max])
{
//assign it here
max = j;
}
以下是修改后的代码。
int max;
for (int i = 0; i < array.Length; i++)
{
// Assume first element is max
max = i;
for (int j = i + 1; j < array.Length; j++)
{
if (array[j] > array[max])
{
max = j;
}
}
if (max != i)
{
int temp = array[i];
array[i] = array[max];
array[max] = temp;
}
}
关于java - 如何对 "reverse"进行选择排序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16577539/