我有以下的算法來訂購一個.txt文件與10號這個排序算法爲什麼起作用?
for (int i=0;i<array.length;i++)
{
for(int j=i;j<array.length;j++)
{
if (array[i]<array[j])
{
temp=array[i];
array[i]=array[j];
array[j]=temp;
}
}
}
它爲了寫入所有的數字一個新的.txt文件。但用紙筆說,它不應該工作。這是以下幾點:
7 10 4 3 5 8 1 3
算法應該這樣做:
10 7 4 3 5 8 1 3
10 8 4 3 5 7 1 3
10 8 5 3 4 7 1 3
10 8 5 4 3 7 1 3
10 8 5 4 7 3 1 3
10 8 5 4 7 3 3 1
顯然,最後一行是不是爲了,那麼,爲什麼是代碼這樣做對嗎?或者...當我用筆和紙做錯時,我錯在哪裏?
算法在'i = 0'開始時將最大的元素放到最後。漂亮的基本排序算法的複雜性爲O(n2) – Shivam
哇,花了我一段時間,看看它不是泡沫排序。 – Sentry