![整列アルゴリズムの流れ図(フローチャート)。ループ1(i:1,1,n-1)とループ2(j:n,-1,i+1)の二重ループ内でA[j]とA[j-1]を比較・交換する](https://r2.goukaku.dev/figures/ap-2022r04a-a/ap-2022r04a-a-Q06/page.png)
応用情報技術者試験 令和4年度秋期 午前 問6「未整列の配列 A[i](i=1, 2, …, n)を,次の流れ図によって整列する…」の正解と解説です。応用情報技術者試験の「テクノロジ系」分野の過去問で、これまでの受験者の正答率は約51%です。
エ. バブルソート
正答率 51.2%(527人中 270人が正解)
流れ図の構造から整列アルゴリズムの種類を判定する問題。内側のループ2は j を n から i+1 まで1ずつ減らしながら、隣り合う要素 A[j] と A[j−1] を比較し、A[j] が小さければ作業用変数 w を使って交換している。このように隣接要素の比較・交換を繰り返して小さい値を泡のように前方へ運ぶ手法はバブルソートである。外側ループ1で確定範囲を1つずつ狭めていく点もバブルソートの特徴であり、正解はエである。