バブルソートを作成しましたが、配列を印刷するとソートされますが、最大の番号から始まり、最小の番号で終了します。
public int[] BubbleSort(int[] unsortedArray)
{
for(int i = 0; i < unsortedArray.Length; i++)
for(int j = 0; j < unsortedArray.Length; j++)
if(unsortedArray[i] < unsortedArray[j])
{
int temp = unsortedArray[i];
unsortedArray[i] = unsortedArray[j];
unsortedArray[j] = temp;
}
return unsortedArray;
}
リストが逆になっている理由を誰か説明できますか?
編集:申し訳ありませんが、間違ったコードを貼り付けました。
行が if(unsortedArray[i] < unsortedArray[j]) を読み取ると、リストは下から上に並べられますが、これは論理的に意味がありません。i が j より小さい場合、それらを交換します。