空の状態のキューとスタックの二つのデータ構造がある。
次の手続を順に実行した場、変数x に代入されるデータはどれか。
ここで、手続きに引用している関数は、次のとおりとする。
[関数の定義]
push (y ):データy をスタックに積む。
pop ( ):データをスタックから取り出して、その値を返す。
enq (y ):データy をキューに挿入する。
deq ( ):データをキューから取り出して、その値を返す。
[手続]
push (a)
push (b)
enq (pop ( ))
enq (c)
push (d)
push (deq ( ))
x ← pop ( )
ア | a |
イ | b |
ウ | c |
エ | d |
答え イ
【解説】
初期状態は、スタック、キューはともにからである。
【キーワード】
・キュー
・スタック