Skip to the content.

最終更新日:2026年8月30日

まず結論

基本情報技術者試験でソートアルゴリズムを見分けるときは、「何を基準に、どのように並べ替えるか」を見ます。

まずは次の4つを押さえれば、多くの選択肢を切れます。

隣同士を比較して交換
→ バブルソート

最小値を探して前へ移す
→ 選択ソート

整列済み部分の正しい位置へ入れる
→ 挿入ソート

基準値(ピボット)で小さい側・大きい側に分ける
→ クイックソート

特にクイックソートは、基準値を選んで分割するという表現が決め手です。

直感的な説明

数字が書かれたカードを小さい順に並べる場面を考えます。

同じ「並べ替え」でも、やり方はそれぞれ違います。

方法 直感的なイメージ
バブルソート 隣のカードと比べながら、順番が逆なら交換する
選択ソート 残っているカードから最小のものを探して前へ置く
挿入ソート 既に並んでいる部分の正しい位置へカードを差し込む
クイックソート 基準のカードを決め、小さい組と大きい組に分ける

試験ではアルゴリズム名そのものより、説明文に出てくる動作を拾うのがコツです。

定義・仕組み

バブルソート

隣り合う二つの要素を比較し、順序が逆なら交換します。これを繰り返すことで、大きい値や小さい値が端へ少しずつ移動します。

判断キーワードは、「隣り合う」「比較」「交換」です。

選択ソート

未整列部分から最小値(または最大値)を探し、先頭の要素と交換します。

判断キーワードは、「最小値を探す」「未整列部分から選ぶ」です。

挿入ソート

整列済み部分に新しい要素を一つずつ取り込み、正しい位置へ挿入します。

判断キーワードは、「整列済み部分」「正しい位置へ挿入」です。

クイックソート

基準値(ピボット)を一つ選び、データを基準値より小さい側と大きい側に分割します。分割した各グループでも同じ処理を繰り返します。

基準値を選ぶ
↓
小さい側 / 大きい側に分ける
↓
それぞれのグループでも同じ処理を行う

この「分割して、さらに同じ処理を繰り返す」という考え方は、再帰処理とは?呼び出しと戻りを追う方法にもつながります。

探索アルゴリズムとの違いを確認したい場合は、ブロック探索とは?平均比較回数を公式なしで求める方法も参考になります。

基本情報技術者試験の出題範囲は、IPA:試験要綱・シラバスについて で確認できます。

科目Aでどう出る?

科目Aでは、アルゴリズムの処理方法を文章で示し、該当する名称を選ばせる問題が典型です。

文章を最初から細かく追うより、次の単語を探します。

問題文の手掛かり 判断
隣り合うデータを比較・交換 バブルソート
最小値・最大値を探す 選択ソート
整列済み部分の適切な位置に追加 挿入ソート
基準値・ピボットで二つに分割 クイックソート

特に「繰り返す」という言葉だけでは判断できません。どのソートも処理を繰り返すため、繰り返し方の違いを見る必要があります。

どんな場面で使う?

ソートは、データを一定の順序に並べ、その後の検索や集計をしやすくするときに使います。

例えば、

  • 数値を小さい順に並べる
  • 名前を五十音順に並べる
  • 日付を古い順・新しい順に並べる

といった処理です。

FEでは、実務でどのアルゴリズムを採用するかよりも、処理手順を見てアルゴリズム名を判定する力がまず重要です。

科目Bでは、疑似言語で比較・交換・分割の処理が示されたときに、配列の状態がどう変わるかを追えるようにしておくと役立ちます。

よくある誤解・混同

「交換する」と書いてあればバブルソート

選択ソートでも要素の交換は行います。

バブルソートの決め手は、隣り合う要素を比較することです。

「最小値を前へ移す」と「正しい位置へ挿入する」を混同する

残り全体から最小値を探す
→ 選択ソート

一つの値を整列済み部分へ差し込む
→ 挿入ソート

と切り分けます。

クイックソートは「高速なソート」という説明だけで選ぶ

名前に「クイック」とありますが、試験での決め手は速さではありません。

基準値(ピボット)を選び、データを二つのグループに分割することが本質です。

基準値そのものが最終的な中央の値だと思う

ピボットは、データを分割するための基準として選ぶ値です。必ず中央値を選ぶという意味ではありません。

まとめ(試験直前用)

  • 隣同士を比較・交換 → バブルソート
  • 最小値を探して前へ → 選択ソート
  • 整列済み部分の正しい位置へ入れる → 挿入ソート
  • 基準値(ピボット)で小さい側・大きい側に分割 → クイックソート
  • 「交換」「繰り返す」だけでは決めず、どのように比較・分割するかを見る

© 2024-2026 stemtazoo. All rights reserved.