【問127】ITパスポート 練習問題|バブルソートの手順
基礎理論とアルゴリズム 問17/20難易度C(難しい)
問題文
整列アルゴリズムのうち、バブルソートの手順を説明したものはどれか。
- 1.データを一定の基準値で二つのグループに分け、それぞれをさらに同じ手順で分割していく
- 2.隣り合う二つの要素を比較し、大小の順序が逆であれば入れ替える操作を繰り返す
- 3.未整列の部分から最小の要素を探し出し、未整列部分の先頭の要素と入れ替える
- 4.整列済みの列に対して、次の要素を正しい位置に挿入する操作を繰り返していく
解説
正解は2。バブルソートは、隣り合う二つの要素を順に比較し、大小の順序が逆になっていれば入れ替える操作を、列の端から端まで繰り返す方法である。1回の走査で最も大きい値が端へ移動し、これを繰り返すことで全体が整列する。3は誤り。未整列の部分から最小の要素を探して未整列部分の先頭と交換するのは選択ソートである。4は誤り。整列済みの列に次の要素を正しい位置へ入れていくのは挿入ソートである。1は誤り。基準値でグループを分けて同じ手順を繰り返すのはクイックソートである。ITパスポートでは、どの操作を繰り返す方法かという手順の特徴で各アルゴリズムを見分けられるようにしておく。