問5令和3年度 秋期テクノロジ系
バブルソートの説明として,適切なものはどれか。
- アある間隔おきに取り出した要素から成る部分列をそれぞれ整列し,更に間隔を詰めて同様の操作を行い,間隔が1になるまでこれを繰り返す。
- イ中間的な基準値を決めて,それよりも大きな値を集めた区分と,小さな値を集めた区分に要素を振り分ける。次に,それぞれの区分の中で同様の操作を繰り返す。
- ウ隣り合う要素を比較して,大小の順が逆であれば,それらの要素を入れ替えるという操作を繰り返す。
- エ未整列の部分を順序木にし,そこから最小値を取り出して整列済の部分に移す。この操作を繰り返して,未整列の部分を縮めていく。
正解はウ
解説 本サイト独自(IPA公表のものではありません)
ウ バブルソートは,隣接する要素を順に比較し,並び順が逆なら互いを入れ替える整列方法である。この操作を列全体に繰り返すと,大きい要素又は小さい要素が端へ少しずつ移動し,最終的に全要素が正しい順序に並ぶ。
- ア これは,一定の間隔で作った部分列を整列し,その間隔を縮めながら全体を整列する方法の説明である。隣接要素の比較だけを繰り返す方法ではない。
- イ これは,基準値を境に要素を二つの区分へ振り分け,各区分に同じ処理を繰り返す方法の説明である。
- エ これは,未整列部分を順序木として扱い,最小値を順に取り出す方法の説明である。隣接要素同士の交換を繰り返す方法ではない。
この解説は間違っています
この解説は,別のモデルによるレビューを受けています。
出典:令和3年度 秋期 応用情報技術者試験 午前 問5