我试图使用数组上的可比排序来进行选择排序。我不知道它为什么不起作用。如果有人能看一看,帮我找出不起作用的东西,那就太好了!谢谢!
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));
}发布于 2015-11-29 23:28:44
您没有指定您的问题是什么,但在主体的最后一行中,您应该这样做
System.out.println(Arrays.toString(selectionSort(no)));输出在我看来是排序的。
https://stackoverflow.com/questions/33989313
复制相似问题