未整列の配列A[i](i=1,2,…,n)を、次の流れ図によって整列する。ここで用いられる整列アルゴリズムはどれか。
隣接要素の比較交換を繰り返す整列はバブルソート
![流れ図。開始→ループ1(i:1,1,n-1)→ループ2(j:n,-1,i+1)→判定A[j]:A[j-1](≧なら何もせずループ2へ戻る、<ならw←A[j], A[j]←A[j-1], A[j-1]←wを実行してループ2へ戻る)→ループ2終端→ループ1終端→終了。隣接要素を比較して交換する処理を繰り返す構造。](/data/ap/figures/ap-2022a-am-6.jpg)
選択肢
- アクイックソート
- イ選択ソート
- ウ挿入ソート
- エバブルソート
正解と解説
正解:エ バブルソート
内側のループが配列の末尾側から先頭方向へ進みながら、隣り合う要素A[j]とA[j−1]を比較し、逆順なら交換しています。隣接要素の比較交換を繰り返して小さい値を先頭へ押し上げる動きは、バブルソートの典型的な形です。
選択肢ごとの解説
- ア基準値で分割して再帰的に整列する方式で、この流れ図には分割処理がない。
- イ未整列部から最小値を選んで確定させる方式で、比較のたびに交換はしない。
- ウ整列済み部分の適切な位置へ挿入する方式。ここは隣接交換のみで挿入位置の探索がない。
- エ正しい。隣接要素の比較と交換の繰返しはバブルソートの特徴。
同じ分野の他の問題
- fact(n)は,非負の整数nに対してnの階乗を返す。fact(n)の再帰的な定義はどれか。2025年度 春期 午前 問7
- 0≦x≦1の範囲で単調に増加する連続関数f(x)がf(0)<0≦f(1)を満たすときに,区間内でf(x)=0であるxの値…2025年度 春期 午前 問2
- 整列方法に関するアルゴリズムの記述のうち、バブルソートの記述はどれか。ここで、整列対象は重複のない1から9の数字がランダ…2024年度 春期 午前 問7
- 正の整数Mに対して、次の二つの流れ図に示すアルゴリズムを実行したとき、結果xの値が等しくなるようにしたい。aに入れる条件…2024年度 春期 午前 問5
- あるデータ列を整列したら状態0から順に状態1、2、・・・・、Nへと推移した。整列に使ったアルゴリズムはどれか。2023年度 秋期 午前 問6
最終更新:2026-08-25/解説・選択肢ごとの解説は資格暗記が独自に作成しています。問題文と選択肢の出典は上記のとおりです。