この概念が出た関連問題

この試験の対策ガイド

ITパスポート試験 対策ガイド

合格率・勉強法・参考書の選び方をまとめています

見る →
答えと解説を見る(先に解くのがおすすめ)

正解は イ

解説

このプログラムは選択ソート(最小値を先頭へ順に確定する整列)です。numberArray={3,5,1,2,4}を整列する過程で、j回目の繰返しごとに前からj番目の値が確定します。j=1で先頭が1(1,5,3,2,4)、j=2で2番目が2(1,2,3,5,4)、j=3では3番目が3で確定し配列は変わらず(1,2,3,5,4)です。jの値が3と出力された直後の配列はイの1,2,3,5,4で、正解はイです。

なぜ他の選択肢は違うのか

選択肢 ア
1,2,3,4,5は全ての整列が完了した最終結果で、j=3の出力直後ではありません。j=3の時点ではまだ末尾の5と4が並べ替わっていません。
選択肢 ウ
4,5,3,2,1は降順に近い並びで、この選択ソートの途中経過には現れません。アルゴリズムは昇順に整列します。
選択肢 エ
5,4,3,2,1は完全な降順で、昇順に整列するこのプログラムの途中経過としては現れません。

解くときのポイント

整列アルゴリズムの追跡問題は、表を書いて1回の繰返しごとに配列の状態を更新します。選択ソートは『毎回1つずつ先頭から確定する』と動きを押さえましょう。