令和4年度秋期 応用情報技術者試験 午前 問6

分野:アルゴリズムとプログラミング|実際に出題されたIPA過去問題

未整列の配列 A[i](i=1, 2, …, n)を,次の流れ図によって整列する。ここで用いられる整列アルゴリズムはどれか。

問題の図表(IPA公式問題冊子より引用)
図表:IPA公式問題冊子より
  1.  クイックソート
  2.  選択ソート
  3.  挿入ソート
  4.  バブルソート
解答・解説を見る

正解:エ

AI解説

隣り合う要素A[i]とA[i+1]を比較し、順序が逆であれば交換するという操作を、配列の末尾までかつ配列全体で繰り返す(二重ループ)構造の流れ図は、バブルソート(隣接交換法)に特徴的な処理である。 ア: クイックソートは基準値(ピボット)を選び、それより小さい要素と大きい要素のグループに分割していく分割統治法であり、隣接要素同士の単純な比較・交換を繰り返す構造とは異なる。 イ: 選択ソートは未整列部分の中から最小(または最大)の要素を一つ選び出し、確定位置の要素と1回だけ交換する処理を繰り返す方式であり、隣接要素を次々に比較・交換するバブルソートとは異なる。 ウ: 挿入ソートは整列済みの部分列に対して未整列の要素を適切な位置に挿入していく方式であり、全体を総当たりで隣接比較する構造とは異なる。 エ: 正しい。隣接する要素を比較し順序が逆なら交換する処理を繰り返す流れ図はバブルソートの特徴である。 💡 隣接する要素同士の比較・交換を繰り返す二重ループの流れ図が出てきたらバブルソート、とパターンで見分ける。

出典:令和4年度 秋期 応用情報技術者試験 午前 問6 / 独立行政法人情報処理推進機構(IPA)
※Web掲載用に表記を一部変更しています。図表はIPA公式問題冊子から引用しています。著作権はIPAに帰属します。
📱 演習アプリで解く(無料・登録不要・2,640問収録)

「アルゴリズムとプログラミング」分野の攻略ポイント

データ構造・アルゴリズム・探索と整列・計算量・擬似言語・プログラム言語・データ記述言語が対象です。擬似言語のトレースは時間はかかるものの、落ち着いて表を書けば必ず正解にたどり着く「確実に取れる」問題です。

アルゴリズムとプログラミングの攻略ポイントをすべて見る(要点6項目・ひっかけ3項目)→

同じ分野(アルゴリズムとプログラミング)の過去問