整列(ソート)とは?せいれつ
整列(ソート)とは、データをある基準に従って並べ替える処理。基本的な方式にバブルソート・選択ソート・挿入ソート、実用的な方式にクイックソート・マージソート・ヒープソートがある。同じ値どうしの元の並び順が保たれる性質を安定性と呼び、複数のキーで順に並べ替えるときはこの安定性が前提になる。
最終更新:2026-10-06
この語が出る過去問を解く →背景
並べ替えは目的そのものではなく、探索・集計・突合を成立させるための下ごしらえである。整列されていれば二分探索が使え、2つのファイルを1回ずつ読むだけで突き合わせられる。件数が増えるほど整列の良し悪しが全体の処理時間を決めるため、どの方式を選ぶかが設計判断になる。応用情報では手順のトレースと、安定性・追加記憶領域の要否という選択基準が問われる。
具体例
取引明細を日付順に並べてから月次集計する、といった前処理が典型。売上順に並べたうえで同額なら店舗コード順にしたい場合は、後ろのキーから順に安定な整列をかければよく、これは安定性が保証されていないと成立しない。
試験での引っ掛け
並べ替えるのが整列、目的のデータを見つけるのが探索で、まず両者を取り違えない。手順の区別も定番で、バブルソートは隣り合う要素を比較して交換、選択ソートは最小値を選んで先頭と入れ替える。クイックソートとヒープソートは安定ではない点も、複数キーの整列を扱う問題で問われる。
関連用語
出た過去問
出典:平成28年度 秋期 応用情報技術者試験 午前 問6(IPA)
ヒープソートの説明として、適切なものはどれか。
正解:未整列の部分を順序木にし、そこから最小値を取り出して整列済の部分に移す。この操作を繰り返して、未整列の部分を縮めていく。
要点:ヒープソートは順序木の根から極値を取り出して整列する
ヒープソートは、未整列部分をヒープ(親子間に大小関係が保たれた順序木)として構成し、根にある最小値または最大値を取り出して整列済み部分へ移す操作を繰り返す方式です。取り出すたびにヒープを再構成するため、計算量は要素数nに対しておおむね n log n となります。他の選択肢はシェルソート、クイックソート、バブルソートの説明です。
出典:平成31年度 春期 応用情報技術者試験 午前 問6(IPA)
次の手順はシェルソートによる整列を示している。データ列 7, 2, 8, 3, 1, 9, 4, 5, 6 を手順(1)〜(4)に従って整列するとき、手順(3)…
正解:2
要点:シェルソートの間隔Hは3で割り続け、0になるまでの回数を数える
データ数9なので手順(1)でH=[9÷3]=3となり、手順(2)で間隔3の部分列を整列する。1回目の手順(3)でH=[3÷3]=1、0でないので手順(2)に戻り間隔1で整列する。2回目の手順(3)でH=[1÷3]=0となり手順(4)で完了する。よって手順(3)の実行回数は2回である。
出典:令和3年度 秋期 応用情報技術者試験 午前 問5(IPA)
バブルソートの説明として、適切なものはどれか。
正解:隣り合う要素を比較して、大小の順が逆であれば、それらの要素を入れ替えるという操作を繰り返す。
要点:バブルソートは隣接要素の比較交換を繰り返す整列法
バブルソートは隣り合う要素を順に比較し、大小の順序が逆であれば交換する操作を繰り返す整列法である。1回の走査で最大値(または最小値)が端に移動する様子が泡の浮上に似ることから、この名で呼ばれる。実装は単純だが計算量はO(n^2)で、大量データには向かない。
出典:令和4年度 秋期 応用情報技術者試験 午前 問6(IPA)
未整列の配列A[i](i=1,2,…,n)を、次の流れ図によって整列する。ここで用いられる整列アルゴリズムはどれか。
正解:バブルソート
要点:隣接要素の比較交換を繰り返す整列はバブルソート
内側のループが配列の末尾側から先頭方向へ進みながら、隣り合う要素A[j]とA[j−1]を比較し、逆順なら交換しています。隣接要素の比較交換を繰り返して小さい値を先頭へ押し上げる動きは、バブルソートの典型的な形です。
出典・参考
公式シラバスの3 技術要素 > 2. UX/UI デザイン > (2) 情報デザインに掲載されている用語です。
解説は資格暗記が独自に作成しています。過去問の出典は各問題に記載のとおりです。