ITパスポート模擬試験~令和7年度【問98】~

4個の要素から成るデータの並びを、次の手順を繰り返して昇順に整列するとき、整列が終了するまでに(1)から (3)の一連の手順は、何回実行されるか。ここで、最初はデータの並び全体を整列対象とする。

データの並び: [27, 42,33, 12]

[手順]
(1) 整列対象中の要素の最大の値を選び、最後の要素と入れ替える。
(2) 最後の要素を整列対象から外す。
(3) 整列対象に要素が1個以上残っていれば、(1)から (3)の一連の手順を実行する。 残っていなければ、整列完了なので終了する。

  • ア. 2
  • イ. 3
  • ウ. 4
  • エ. 5

【答え】ウ

【解説】

この問題は、選択ソート型の整列手法に基づいています。

1回目の実行

(1) [27, 42, 33, 12] ← 最大は42、最後の12と交換

(2) [27, 12, 33, 42] ← 最後の要素「42」を整列対象から外す

(3) [27, 12, 33, 42] ← 整列対象の要素は3個なので(1)に戻る

2回目の実行

(1) [27, 12, 33, 42] ← 最大は33、最後の33と交換(変化なし)

(2) [27, 12, 33, 42] ← 最後の要素「33」を整列対象から外す

(3) [27, 12, 33, 42] ← 整列対象の要素は2個なので(1)に戻る

3回目の実行

(1) [27, 12, 33, 42] ← 最大は27、最後の12と交換

(2) [12, 27, 33, 42] ← 最後の要素「27」を整列対象から外す

(3) [12, 27, 33, 42] ← 整列対象の要素は1個なので(1)に戻る

4回目の実行

(1) [12, 27, 33, 42] ← 最大は12、最後の12と交換(変化なし)

(2) [12, 27, 33, 42] ← 最後の要素「12」を整列対象から外す

(3) [12, 27, 33, 42] ← 整列対象の要素は0個なので終了

→整列が終了するまでに(1)から(3)の一連の手順は、4回実行される

以上より、正解はウ.となります。

間違えた人はこちらで復習

アルゴリズムとプログラミング1~アルゴリズムと流れ図(フローチャート)~

※本問は自分で考えて解く応用的な問題なので、用語の丸暗記のみでは対応できません。