平成25年度 秋期 応用情報技術者試験 午前 問9
未整列の配列 a[i](i=1,2,…,n)を,流れ図で示すアルゴリズムによって昇順に整列する。n=6 で a[1]〜a[6] の値がそれぞれ,21,5,53,71,3,17 の場合,流れ図において,a[j−1] と a[j] の値の入替えは何回行われるか。

キーボード:1〜4 で解答 → 次の問題 ← 前の問題
正解と解説を見る
解答する前に解説を開いたので、この問題は「見て解いた」として記録します(正解数には入りません)。
正解:ウ
この流れ図は,配列の後ろから隣どうしを比べて入れ替えるバブルソートです。入替えは「前の値>後ろの値」のときに1回ずつ行われ,その回数は配列中の逆順の組(転倒数)の数と等しくなります。
21,5,53,71,3,17 の逆順の組を数えます。
- 21:5,3,17 より大きい → 3組
- 5:3 より大きい → 1組
- 53:3,17 より大きい → 2組
- 71:3,17 より大きい → 2組
- 3:0組
合計 3+1+2+2 = 8 回です。
-
ア: 3
誤り。逆順の組は8組あるので,3回では整列できません。 -
イ: 6
誤り。逆順の組は8組あるので,6回では整列できません。 -
ウ: 8
正しい。上の計算のとおり8回です。 -
エ: 15
誤り。15 は比較の回数(5+4+3+2+1)です。入替えは比較のうち a[j−1]>a[j] のときだけ行われます。
答え
ウ: 8
出典:平成25年度 秋期 応用情報技術者試験 午前 問9