該算法在課堂上給我們:ComparisonCountingSort僞難度
我有我試圖確定輸出當輸入是一個數組A[60,35,81,98,14,47]
麻煩
。
我想習慣僞代碼語法,所以我試圖將其轉換爲Java語法,但是生成的程序不會顯示結果。這是我的轉換代碼:
public class Driver
{
public static void main(String[] args)
{
int[] test = {60, 35, 81, 98, 14, 47};
int[] converse = new int[6];
converse = countSort(test);
for(int i : converse)
{
System.out.println(converse[i]);
}
}
public static int[] countSort(int[] a)
{
int[] s = new int[6];
int[] count = new int[6];
int n = a.length + 1;
for(int i = 0; i < (n-1);)
{
count[i] = 0;
}
for(int i = 0; i < (n-2);)
{
for(int j = (i+1); i < (n-1);)
{
if(a[i] < a[j])
{
count[j] = count[j]+1;//What
}
else
{
count[i] = count[i]+1;
}
}
}
for (int i = 0; i < (n-1);)
{
s[count[i]] = a[i];
}
return s;
}
}
哎呀離開了,我有它,但我必須刪除它。同樣的問題。 –
實際上,在所有四個循環中都會出現增加循環控制變量的同樣故障。這是將僞代碼正確轉換爲Java的失敗。 –
感謝關鍵錯誤 –