令和4年度 秋期 応用情報技術者試験 午前 問6
テクノロジ/アルゴリズム未整列の配列 A[i](i=1, 2, …, n)を,次の流れ図によって整列する。ここで用いられる整列アルゴリズムはどれか。

出典:令和4年度 秋期 応用情報技術者試験 午前 問6
- アクイックソート
- イ選択ソート
- ウ挿入ソート
- エバブルソート
正解:エ
解説
外側のループで i を 1 から n−1 まで進め,内側のループで j を配列の末尾 n から i+1 まで戻しながら,隣接する要素 A[j] と A[j−1] を比較して A[j] が小さければ交換しています。隣接要素の比較・交換を繰り返して小さい要素を先頭側に浮かび上がらせる,バブルソートの動きです。
選択肢ごとの解説
- ア誤り。クイックソートは基準値(ピボット)を決めて,それより小さい要素と大きい要素とに分割することを再帰的に繰り返す方法です。
- イ誤り。選択ソートは未整列部分から最小(最大)の要素を探し出し,先頭要素と交換する操作を繰り返す方法で,隣接交換は行いません。
- ウ誤り。挿入ソートは整列済みの部分列に対して新たな要素を適切な位置に挿入していく方法です。
- エ正しい。隣接する2要素の比較と交換を端から端まで繰り返すのはバブルソートの特徴です。