ITパスポート試験 - 令和7年 - 問98

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

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

〔手順〕
(1) 整列対象中の要素の最大の値を選び,最後の要素と入れ替える。
(2) 最後の要素を整列対象から外す。
(3) 整列対象に要素が1個以上残っていれば,(1)から(3)の一連の手順を実行する。
  残っていなければ,整列完了なので終了する。
2
3
4
5
答え
分野 : テクノロジ系 › 基礎理論 › アルゴリズムとプログラミング › アルゴリズムとプログラミング
解説
4個の要素から成るデータの並び[27,42,33,12]を,選択ソートに似た手順で昇順に整列するとき,(1)から(3)の一連の手順が何回実行されるかを求める問題です。答えは「ウ」です。手順は「整列対象中の最大値を選び最後の要素と入れ替え,最後の要素を対象から外す」というものです。

1回目は4個の要素(27,42,33,12)から最大値42を選び,最後の要素12と入れ替えて(27,12,33,42)とし,42を対象から外します。

2回目は残り3個(27,12,33)から最大値33を選び,最後の要素33自身なので実質そのままか位置の確認をして対象から外します。

3回目は残り2個(27,12)から最大値27を選び,最後の要素12と入れ替えて(12,27)とし,対象から外します。

4回目は残り1個(12)のみとなり,要素が1個以上残っているため手順を実行し,その後対象から外すと要素がなくなり終了します。

要素が1個の場合でも手順(1)から(3)は実行されるため,合計で4回の実行となり,選択肢「ウ」が正解です。
ホーム画面への追加方法
1.ブラウザの 共有ボタンのアイコン 共有ボタンをタップ
2.メニューの「ホーム画面に追加」をタップ
閉じる