未整列の配列A[i] (i=1, 2, ..., n) を、次の流れ図によって整列する。ここで用いられる整列アルゴリズムはどれか。
ア クイックソート
イ 選択ソート
ウ 挿入ソート
エ バブルソート
エ
ア クイックソートは、中間的な基準値を決めて、それよりも大きな値を集めた区分と、小さな値を集めた区分に要素を振り分け、次に、それぞれの区分の中で同様な処理を繰り返す。
イ 選択ソートは、データの中から最小値 (最大値) を探し、配列の左端からと交換しながら、整列する手法である。
ウ 挿入ソートは、最初の2つの要素を比較して、整列し3番目以降は、整列された範囲の中の適切な位置に挿入していく手法である。
エ 正しい。バブルソートは、隣り合う要素を比較して、大小の順が逆であれば、それらの要素を入れ替えるという操作を繰り返す。
A[j] : A[j-1] で隣り合う要素を比較し、以下の部分で要素を入れ替える。
w ← A[j]
A[j] ← A[j-1]
A[j-1] ← w
問5 | 目次 | 問7 |