SC情報処理安全確保支援士試験 午前Ⅰ
令和3年度秋期 情報処理安全確保支援士 午前Ⅰ 問3
問題文と選択肢を読んで答えを考えてから、下の「正解と解説を見る」で確認しましょう。
問題
選択肢
- アある問隔おきに取り出した要素から成る部分列をそれぞれ整列し、 更に問隔を詰めて同様の操作を行い、 問隔が1になるまでこれを繰り返す。
- イ中問的な基準値を決めて、 それよりも大きな値を集めた区分と、 小さな値を集めた区分に要素を振り分ける。次に、 それぞれの区分の中で同様の操作を繰り返す。
- ウ隣り合う要素を比較して、 大小の順が送であれば、 それらの要素を入れ替えるという操作を繰り返す。
- エ未整列の部分を順序木にし、 そこから最小値を取り出して整列済の部分に移す。 この操作を繰り返して、 未整列の部分を縮めていく。
解き方のヒントを見る
午前I 問03:バブルソートの動きを見抜こう
バブルソートは、となり同士の値を見比べて、順番が逆なら入れ替える、という作業を何度もくり返す整列方法だよ。たとえるなら、列に並んだ人をとなり同士で背比べして、背の高い人が少しずつ後ろへ送られていくイメージ。1回の通過ごとに大きい値が末尾側へ移動していくのが特徴だよ。
この問題で問われていること
ポイントは、バブルソートの「となり同士を比較して交換する」という特徴を、シェルソート・クイックソート・ヒープソートと区別できるかだよ。分割して考えるクイックソート、間隔をあけて比較するシェルソート、ヒープ構造を使うヒープソートとは動き方が違うことを押さえよう。
Bubble Sort
compare adjacent items and swap if out of order
adjacent compare\nswap repeatedly
確認ポイント
- 間隔を詰める説明はシェルソート寄りです。
- 基準値分割はクイックソートです。
- 隣接交換がキーワードです。
正解と解説を見る
正解
ウ
出典
問題文と解答は IPA 公開の過去問題冊子・解答例を基にしています。
選択肢ア
これは不正解だよ。間隔を空けて取り出したグループを並べ替え、だんだん間隔を詰めるのはシェルソートの説明だよ。まず飛び飛びの席の人を整列させて、最後に隣同士まで細かく整える感じで、バブルソートそのものではないよ。
選択肢イ
これは不正解だよ。中間の基準値を1つ決めて、大きい組と小さい組に分けていくのはクイックソートの考え方なんだ。荷物を「この箱より重いか軽いか」でどんどん分ける感じで、隣同士を入れ替えるバブルソートとは別物だよ。
選択肢ウ(正解)
これは正解だよ。バブルソートは、隣同士を見比べて順番が逆なら入れ替える、という作業を何度も繰り返す方法なんだ。列に並んだ人を、隣の人と背比べして場所を交換していくイメージだよ。
選択肢エ
これは不正解だよ。未整列の部分を順序木にして、そこから最小値などを取り出すのはヒープソートの説明だよ。山積みの荷物を一度取り出しやすい形に積み直して、上から順に持っていく感じで、バブルソートの「隣同士を比べる」やり方ではないよ。
出典:独立行政法人 情報処理推進機構(IPA)令和3年度秋期 情報処理安全確保支援士試験 午前Ⅰ 問3(公式資料:問題冊子(PDF) / 解答例)
関連する過去問一覧
IPA Advancedは非公式の学習サイトです。解説にはAIによる補助生成を含む場合があります。公式の問題冊子・解答例・採点講評を優先し、誤りは確認後に訂正します。運営・編集方針