4個の要素から成るデータの並びを、次の手順を繰り返して昇順に整列するとき、整列が終了するまでに(1)から(3)の一連の手順は、何回実行されるか。ここで、最初はデータの並び全体を整列対象とする。 データの並び:[27, 42, 33, 12] 〔手順〕 (1) 整列対象中の要素の最大の値を選び、最後の要素と入れ替える。 (2) 最後の要素を整列対象から外す。 (3) 整列対象に要素が1個以上残っていれば、(1)から(3)の一連の手順を実行する。残っていなければ、整列完了なので終了する。
対象を1個ずつ減らし、残りが無くなるまで繰り返す
選択肢
- ア2
- イ3
- ウ4
- エ5
正解と解説
正解:ウ 4
手順は毎回、整列対象の中から最大値を末尾へ移し、その要素を対象から外すことを繰り返します。対象は4個から1個ずつ減り、残りが1個以上ある限り繰り返すので、4個・3個・2個・1個の各段階で実行され、対象が0個になった時点で終了します。よって合計4回です。
選択肢ごとの解説
- ア残り2個・1個の段階の実行が数えられていません。
- イ最後に1個だけ残った段階の実行が抜けています。
- ウ対象が4個から1個になるまで各段階で実行され、合計4回となります。
- エ対象が0個になった後は繰り返さないため、多すぎます。
同じ分野の他の問題
- 手続sortは、要素数が2以上の整数型の配列を引数numberArrayで受け取り、その要素を昇順に並べ替えた結果を出力…2026年度 秋期 問67
- 手続printArrayは、配列integerArrayの要素を並べ替えて出力する。手続printArrayを呼び出した…2023年度 秋期 問60
- 関数isPrimeは、引数として与えられた正の整数が、素数であればtrueを、素数でなければfalseを戻り値とする。例…2026年度 秋期 問85
- 関数calculateAmountOfPrizeは、業務改善の効果における改善額と短縮期間を、それぞれimproveme…2025年度 秋期 問99
- 手続calcMod3を呼び出したときの出力はどれか。 〔プログラム〕 ○calcMod3() 整数型: totalVal…2025年度 秋期 問78
最終更新:2026-08-25/解説・選択肢ごとの解説は資格暗記が独自に作成しています。問題文と選択肢の出典は上記のとおりです。