修了試験 2022-06-12実施分 基本情報技術者試験 問9
配列A[i](i=1,2,…,n)を,次のアルゴリズムによって整列する。 行2〜3の処理が初めて終了したとき,必ず実現されている配列の状態はどれか。 〔アルゴリズム〕 行番号 1 iを1からn-1まで1ずつ増やしながら行2〜3を繰り返す 2 jをnからi+1まで1ずつ減らしながら行3を繰り返す 3 もしA[j]<A[j-1]ならば,A[j]とA[j-1]を交換する
正答1
解説
正解はア。 このアルゴリズムはi=1のとき,jをnからi+1=2まで減らしながら隣接要素A[j]とA[j-1]を比較し,A[j]の方が小さければ交換する。 この操作で最小値が後方から前方へ順に押し出され,1回目の行2〜3終了時にはA[1]が配列全体の最小値になる。まとめて解く
修了試験 2022-06-12実施分を通しで解く(80問)→