アルゴリズムをプログラムしてみるシリーズ第3弾は「挿入ソート(insert-sort)」です。
以前の2つをやった感じだとこのソート方法は、かなりスタンダードな手法であることがわかります。
「選択ソート」よりも少し非効率ではないかと思われるこの挿入ソートですが、今回はアルゴリズム解説を行うので、しっかり学習しましょう(オレ)。
wikipedia
解説
横一列に並んだ乱数値を、左から小さい順に並べることを目的とします。 挿入ソートは左側の数値を順に確定していく単純なやり方ですが、確定した数字の中の適正ポジションに挿入していくイメージです。1. ランダム数値の配列※左から数値が小さくなるように整列する
2. 左端の2つの数値を比較して左が小さくなるように並び替える
3. 次に左の2つの数値に入る位置に挿入する
4. この場合は、一番小さいので一番左側になる
5. 次に左の確定組と次の数値を比較する
6. 適正な位置に挿入する
7. 比較する数値が一番大きい場合は変更なしになる
8. 全ての数値が確定するまで順に繰り返す
0 件のコメント:
コメントを投稿