目次
はじめに
情報処理試験問題でよく登場する整列アルゴリズムの問題。
基本的な整列アルゴリズムには「バブルソート」「選択ソート」「挿入ソート」があります。そしてより高速な整列アルゴリズムには「シェルソート」「クイックソート」「ヒープソート」「マージソート」などがあります。
スポンサーリンク
本記事では、最小値(もしくは最大値)と先頭の値を交換していく「選択ソート(基本選択法)」について図解を利用してわかりやすく解説しています。
選択ソート(基本選択法)とは
選択ソートとは対象となるデータの中から最小値(もしくは最大値)を探し、先頭の値と交換。この作業を繰り返すことで全体を整列させていく手法です。
- 未整列データの中から最小値を探す
- 最小値と先頭の値を交換する。
- 交換した先頭の値は整列済みデータとする。
- 1~3を繰り返し、全て整列済みデータになったら終了となります。
それでは具体的に図解で選択ソートの流れを説明していきます。
1巡目 未確定データ内の最小値と先頭の値を交換する
未確定データの中から最小値を探し、最小値「1」と先頭データ「4」を入れ替えます。
選択ソートにより入れ替えを行った、最小値「1」は整列済みデータとなります。
2巡目 再び未確定データ内の最小値と先頭の値を交換する
未確定データの中から最小値を探し、最小値「2」と先頭データ「4」を入れ替えます。
選択ソートにより入れ替えを行った、最小値「2」は整列済みデータとなります。
3巡目 再び未確定データ内の最小値を探し、整列を完了させる
未確定データの中から最小値を探します。最小値「3」はすでに先頭にあるので、整列済みデータとなります。また最後に残った「4」も整列済みデータとなり、選択ソートは完了となります。

これで選択ソートは完了です。最小値と先頭を繰り返すという非常にシンプルなソートです。
整列アルゴリズムの問題は情報処理試験でよく出題される内容なので、ソートの名前とどんな動きなのかは覚えておくことをお勧めします。