※このページには広告(PR)が含まれます

ITパスポート 令和7年度 問98 の解説テクノロジ系/アルゴリズムとプログラミング

正解はウ。各ループで整列対象の要素数が1ずつ減り(4個→3個→2個→1個→0個)、対象が0個になるまでに一連の手順がちょうど4回実行されるため適切です。

4個の要素から成るデータの並びを、次の手順を繰り返して昇順に整列するとき、整列が終了するまでに(1)から(3)の一連の手順は、何回実行されるか。ここで、最初はデータの並び全体を整列対象とする。 データの並び: [27, 42, 33, 12] [手順] (1) 整列対象中の要素の最大の値を選び、最後の要素と入れ替える。 (2) 最後の要素を整列対象から外す。 (3) 整列対象に要素が1個以上残っていれば、(1)から(3)の一連の手順を実行する。残っていなければ、整列完了なので終了する。

この設問が問うていること

選択ソート(基本選択法)に基づく整列アルゴリズムのループ実行回数をトレースする設問です。

ア2
選択肢アの解説: 途中で処理を終了する判定はないため、2回では終了せず不適切です。
イ3
選択肢イの解説: 3回目の実行が終わった段階でも整列対象に要素が1個(12)残っており、条件「1個以上」を満たすため、ここで終了せず不適切です。
ウ4正解
選択肢ウの解説: 各ループで整列対象の要素数が1ずつ減り(4個→3個→2個→1個→0個)、対象が0個になるまでに一連の手順がちょうど4回実行されるため適切です。
エ5
選択肢エの解説: 4回目の実行後には整列対象の要素数が0個になるため、5回目は実行されず不適切です。

総合解説

手順に従って配列サイズと処理を追跡します。初期状態:整列対象は `[27, 42, 33, 12]`(要素数4)。1回目実行:最大値42と最後尾12を入れ替えて `[27, 12, 33, 42]` になり、42を除外。残りは `[27, 12, 33]`(要素数3 ≧ 1)。2回目実行:最大値33はそのまま位置を維持し、33を除外。残りは `[27, 12]`(要素数2 ≧ 1)。3回目実行:最大値27と最後尾12を入れ替えて `[12, 27]` になり、27を除外。残りは `[12]`(要素数1 ≧ 1)。4回目実行:最大値12の位置を維持し、12を除外。残りは `[]`(要素数0、終了)。したがって、手順は計4回実行され、正解は選択肢cです。

執筆・監修: はるのパパ(運営者)更新日: 2026-07-05出典: ITパスポート試験 令和7年度 問98(IPA)

アルゴリズムとプログラミングをまとめて学ぶ

アルゴリズムとプログラミング 重点教科書 →

データ構造・擬似言語・探索と整列アルゴリズム・プログラム言語・HTML/XML/JSONまで、ITパスポートのアルゴリズム分野を体系的に解説します。

令和7年度を本番同様のCBT形式で解いてみよう

無料登録なしでも一部体験可能。登録すれば採点・弱点分析・AI教科書まで使えます。

令和7年度の過去問CBTを解く
PR(SMART合格講座)

苦手な分野を講座で体系的に学び直すなら

🎓

SMART合格講座(スマホで学ぶ試験対策講座)

スマートフォンでの視聴に合わせた講義動画とテキストで、ITパスポートを含む資格の試験対策ができるオンライン講座です。