Я пытаюсь сделать сортировку с использованием сопоставимых по массиву. Я не уверен, почему он не работает. Если кто-то может взглянуть и помочь мне найти то, что не работает, это было бы здорово! Спасибо!Выбор Сортировка Неверный
public static Comparable[] no = new Comparable[100];
public static Comparable[] gen1()
{
Random random = new Random();
for(int i=0;i<no.length;i++)
{
no[i] =random.nextInt();
}
return no;
}
public static Comparable[] selectionSort (Comparable no[])
{
int min;
Comparable temp;
for (int index = 0; index < no.length-1; index++)
{
min = index;
for (int scan = index+1; scan < no.length; scan++)
if (no[scan].compareTo(no[min]) < 0)
min = scan;
temp = no[min];
no[min] = no[index];
no[index] = temp;
}
return no;
}
public static void main(String[] args)
{
System.out.println("Original Array:");
System.out.println(Arrays.toString(gen1()));
System.out.println("Sorted Array:");
System.out.println(selectionSort(no));
}
Я только что попробовал свой код, и сортировка, похоже, работает нормально. Мне пришлось изменить строку, которая печатает отсортированный массив на 'System.out.println (Arrays.toString (selectionSort (no))):' Это то, что не работает для вас? Если нет, можете ли вы указать, что именно не работает? –