0
所以我想寫一個冒泡排序代碼,按降序對隨機數進行排序。這是我寫的代碼:Bubble sort descending
void BubbleSort(int data[], int size)
{
for (int i = size - 1; i >= 0; i--)
{
for (int j = 0; j <=size-1; j++)
{
if (data[j] <data[j + 1])
{
swap(data[j], data[j+1]);
}
}
}
}
在哪裏掉的是:
void Swap(int &x, int &y)
{
int temp = x;
x = y;
y = temp;
}
當我運行它不會排序任何代碼,它只是不斷的隨機數以相同的順序當他們生成了。我不確定我的代碼有什麼問題,我試圖在紙上找到它,並且它運行良好;它可以是具有排序功能的東西嗎?
編輯:我只是修復了外部和內部循環,但它仍然沒有排序。
謝謝!
什麼語言是您使用? –
你的外環是錯誤的。您需要使用帶有標誌的while循環,因爲冒泡排序需要繼續,直到沒有掉電爲止。 –