IPA過去問ドリル

令和5年度 春期 応用情報技術者試験 午前 問7

テクノロジ/アルゴリズム

配列に格納されたデータ 2,3,5,4,1 に対して,クイックソートを用いて昇順に並べ替える。2 回目の分割が終わった状態はどれか。ここで,分割は基準値より小さい値と大きい値のグループに分けるものとする。また,分割のたびに基準値はグループ内の配列の左端の値とし,グループ内の配列の値の順番は元の配列と同じとする。

出典:令和5年度 春期 応用情報技術者試験 午前 問7

正解:ア

解説

1 回目の分割は基準値 2(左端)で行い,2 より小さいグループ{1}と大きいグループ{3,5,4}に分かれ,配列は 1,2,3,5,4 となります。2 回目の分割は要素が複数ある{3,5,4}に対して基準値 3(左端)で行い,3 より大きいグループ{5,4}に分かれ,並びは 1,2,3,5,4 のままです。よって 2 回目の分割後の状態は 1,2,3,5,4 です。

選択肢ごとの解説

  • 正しい。1 回目で 1|2|3,5,4 に,2 回目で{3,5,4}が 3|5,4 に分割され,配列は 1,2,3,5,4 となります。
  • 誤り。1,2,5,4,3 は基準値を右端に置くなど,分割規則を取り違えた場合の並びです。
  • 誤り。2,3,1,4,5 は分割で基準値の位置を移動しなかった場合などの誤った並びです。
  • 誤り。2,3,4,5,1 は小さいグループと大きいグループの並べ方を逆にした場合などの誤った並びです。
応用情報技術者の過去問を演習モードで解く