2021年 秋期 応用情報技術者 午前 問5

バブルソートの説明として、適切なものはどれか。

 ア  ある間隔沖に取り出し要素から成る部分列をそれぞれ整列し、更に感覚を詰めて同様の捜査を行い、間隔が1になるまで繰り返す。
 イ  中間的な基準値を決めて、それより大きな値を集めた区分と、小さな値を集めた区分に要素を振り分ける。 次に、それぞれの区分の中で同様の操作を繰り返す。
 ウ  隣り合う要素を比較して、大小の順が逆で割れば、それらの要素を入れ替えるという操作を繰り返す。
 エ  未整列の部分を順序木にし、そこから最小値を取り出して整列済みの部分に移す。 この操作を繰り返して、未整列の部分を縮めていく。


答え ウ


解説

 ア  ある間隔沖に取り出し要素から成る部分列をそれぞれ整列し、更に感覚を詰めて同様の捜査を行い、間隔が1になるまで繰り返すのは、シェルソートです。(×)
 イ  中間的な基準値を決めて、それより大きな値を集めた区分と、小さな値を集めた区分に要素を振り分ける。 次に、それぞれの区分の中で同様の操作を繰り返すのは、クイックソートです。(×)
 ウ  隣り合う要素を比較して、大小の順が逆で割れば、それらの要素を入れ替えるという操作を繰り返すのは、バブルソートです。(〇)。
 エ  未整列の部分を順序木にし、そこから最小値を取り出して整列済みの部分に移す。 この操作を繰り返して、未整列の部分を縮めていくのは、ヒープソートです。(×)


キーワード
・整列方法

キーワードの解説
  • 整列方法(ソート)
    データの並び替えのことで様々な方法がある。
    • クイックソート
      ソートするデータから、適当な数を選択し、データをその数より大きいほうと小さいほうに分け、分けたデータに対し、この操作を繰り返す。
    • シェルソート
      適当に間隔を開けたデータを取り出し並び替えを行い、間隔を小さくしながらこの操作を繰り返す。
    • バブルソート
      n個のデータに対して、データの1番目と2番目を比較し順番が逆なら入れ替え、次に2番目と3番目で比較し、…、n-1番目とn番目で比較を行う。(n番目のデータの整列)
      その次に、1番目と2番目、2番目と3番目、…、n-2番目とn-1番目。(n-1番目のデータの整列)
      その次に、1番目と2番目、2番目と3番目、…、n-3番目とn-2番目。(n-2番目のデータの整列)
      この処理を繰り返し行い整列する。
    • ヒープソート
      未整列のデータから要素を1個づつ取り出し、ヒープ構造を作りながらデータのソートを行う。
    • マージソート
      データ列を2分割し、2分割したデータ列に対しソートを行い、分割したデータ列を合わせて(マージして)ソートを行う。
    なお、どのソートを使用するかは、ソートを行うデータの構造によっても変わってきます。

もっと、「ソート」について調べてみよう。

戻る 一覧へ 次へ