バブルソート

データを大小の順に並べ替える,バブルソートのアルゴリズムは,

「0番目と1番目の要素の値を比較し、大小の順が逆ならば入れ換える。次に1番目と2番目を比較して逆ならば入れ換える。これを最後まで行うと、最後の数が最大の数として確定する。同じことを,確定していない(最後の数を除いた)部分についておこなう。これを繰り返す。」

バブルソートでn個のデータ d[0]~d[n-1] を昇順にソートする手順❏は,

  1. j=0~n-2に対して,d[j]>d[j+1]ならばd[j]とd[j+1]の値を交換。d[n-1]にd[0]~d[n-1]の最大値が入る。

  2. j=0~n-3に対して,d[j]>d[j+1]ならばd[j]とd[j+1]の値を交換。d[n-2]にd[0]~d[n-2]の最大値が入る。

この手順の項番1,2,...を i と書けば,バブルソートのアルゴリズムは,変数 i と j で次のように表される。

i=1~n-1 に対して,

 j=0~n-1-i のループで,

  d[j]>d[j+1] ならば

   d[j]とd[j+1]の値を入替。