令和8年度 科目A 問2
アルゴリズム
クイックソートの処理方法の説明
クイックソートの処理方法を説明したものはどれか。
- ア既に整列済みのデータ列の正しい位置に,データを追加する操作を繰り返していく方法である。
- イデータ中の最小値を求め,次にそれを除いた部分の中から最小値を求める。この操作を繰り返していく方法である。
- ウ適当な基準値を選び,それよりも小さな値のグループと大きな値のグループにデータを分割する。同様にして,グループの中で基準値を選び,それぞれのグループを分割する。この操作を繰り返していく方法である。
- エ隣り合ったデータの比較と入替えを繰り返すことによって,小さな値のデータを次第に端の方に移していく方法である。
答えと解説を見る
✓ これが正解ウ適当な基準値を選び,それよりも小さな値のグループと大きな値のグループにデータを分割する。同様にして,グループの中で基準値を選び,それぞれのグループを分割する。この操作を繰り返していく方法である。
解説
基準値で大小のグループに分け、それを繰り返す方法です。
クイックソートは、データの中から基準となる値を一つ選び、それより小さい値のグループと大きい値のグループに分けることから始めます。分けたそれぞれのグループでも同じように基準値を選んで分割し、グループが十分に小さくなるまで繰り返すと、全体が整列された状態になります。大きな問題を小さな部分に分けて同じ手順を当てはめる、分割統治の考え方による整列方法です。見分けるときは、手順の中心が追加、最小値の選択、隣どうしの交換、基準値による分割のどれなのかに注目すると、四つの整列方法を取り違えにくくなります。
ほかの選択肢はなぜ違うのか
- ア既に整列済みのデータ列の正しい位置に,デ…:整列済みの並びの正しい位置へデータを一つずつ加えていくのは、挿入ソートの手順です。基準値を選んでグループに分ける操作が含まれていないので、クイックソートの説明にはなりません。
- イデータ中の最小値を求め,次にそれを除いた…:残りの部分から最小値を探しては取り出すことを繰り返すのは、選択ソートの手順です。毎回残り全体を見渡して一つを選ぶだけで、データを大小のグループに分割していく考え方は入っていません。
- エ隣り合ったデータの比較と入替えを繰り返す…:隣り合う二つを比べて入れ替え、小さな値を少しずつ端へ移していくのは、バブルソートの手順です。比較する相手が常に隣のデータに限られ、基準値による分割は行いません。
出典:令和8年度 基本情報技術者試験 科目A 問2
この解説に誤りを見つけたら教えてください。直して、直した記録を残します。誤りを報告する(メールが開きます)