テクノロジ系
春期
基本情報技術者 2014年 春期 問7
7 / 80
空の状態のキューとスタックの二つのデータ構造がある。次の手続を順に実行した 場合、変数に代入されるデータはどれか。ここで、手続で引用している関数は、次 のとおりとする。 〔関数の定義〕 push(y) :データyをスタックに積む。 popO:データをスタックから取り出して、その値を返す。 enq(y) : データyをキューに挿入する。 deq0:データをキューから取り出して、その値を返す。 〔手続〕 push(a) push(b) eng(popO) eng(c) push(d) push(deqO) *← popO
正解と解説
表示する
正解 イ
b
手続を追うと、push(a),push(b)後にpop()でbを取り出しenqでキューへ、enq(c)でキューはb,cの順。push(d)後、deq()でキュー先頭bを取り出しpush、スタックはa,d,bの順。最後のpop()でスタック先頭のbが取り出され変数に代入されます。