アルゴリズムとプログラミング
平成25年度 秋期 基本情報技術者試験 午前 問5
待ち行列に対する操作を,次のとおり定義する。
ENQ n :待ち行列にデータ n を挿入する。
DEQ :待ち行列からデータを取り出す。
空の待ち行列に対し,ENQ 1,ENQ 2,ENQ 3,DEQ,ENQ 4,ENQ 5,DEQ,ENQ 6,DEQ,DEQ の操作を行った。次に DEQ 操作を行ったとき,取り出される値はどれか。
- ア 1
- イ 2
- ウ 5
- エ 6
出典:平成25年度 秋期 基本情報技術者試験 午前 問5
答えと解説を見る
正解:ウ
覚える知識
待ち行列(キュー)のFIFO操作
キューは先に入れたデータを先に取り出すFIFO構造のデータ構造である。
この問題で必要なこと
キューは先入れ先出しなので、ENQ/DEQを順にたどる。挿入1,2,3→DEQで1→挿入4,5→DEQで2→挿入6→DEQで3→DEQで4。残りは5,6で次のDEQは5。
ひっかけ
スタック(LIFO)として扱うと6などを取り出してしまう。
この知識の出題:本試験系 3 回・免除試験 8 回(公開問題での観測値)