クイックソートによるデータ分割の推移

正解は ア です。 クイックソートの手順に従ってグループ分割をトレースします。 ・初期状態: [2, 3, 5, 4, 1] ・1回目の分割:  配列全体の左端である 2 を基準値(ピボット)とします。   2 より小さいグループ: [1]   2 より大きいグループ: [3, 5, 4] (元の順序を維持)  1回目の分割終了時の並び: 1, 2, 3, 5, 4 ・2回目の分割:  要素が複数ある右側のグループ [3, 5, 4] を対象とします。左端の 3 を基準値とします。   3 より小さいグループ:なし(空)   3 より大きいグループ: [5, 4] (元の順序を維持)  このグループの並びは [3, 5, 4] のまま保たれます。 したがって、2回目の分割が終わった状態は 1, 2, 3, 5, 4 です。

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

出典令和5年度 春期 応用情報技術者試験 午前 問7
ア
1,2,3,5,4
イ
1,2,5,4,3
ウ
2,3,1,4,5
エ
2,3,4,5,1