正解 ウ 次の問題へ

問3 未整列の配列a[i] (i=1, 2, ..., n) を、流れ図で示すアルゴリズムによって昇順に整列する。n = 6 でa[1]~a[6]の値がそれぞれ、21, 5, 53, 71, 3, 17の場合、流れ図に置いてa[j-1]とa[i]の値の入替えは何回行われるか。


ア 3
イ 6
ウ 8
エ 15

解説


ややこしい流れ図がありますが、ぶっちゃけた話が、21, 5, 53, 71, 3, 17の配列を隣の数字とちょこちょこ入れ替えて何回入れ替えるとソートが完了しますか?という問題です。それでは実際に並べ替えてみましょう。下の表の赤い所が数字を入れ替えたところです。

スタート 21, 5, 53, 71, 3, 17
1回目 21, 5, 53, 3, 71, 17
2回目 21, 5, 3, 53, 71, 17
3回目 21, 3, 5, 53, 71, 17
4回目 3, 21, 5, 53, 71, 17
5回目 3, 21, 5, 53, 17, 71
6回目 3, 21, 5, 17, 53, 71
7回目 3, 5, 21, 17, 53, 71
8回目 3, 5, 17, 21, 53, 71

というわけで正解はウの8回でした。