基本情報技術者 平成30年秋期 午前問5

午前問5

待ち行列に対する操作を,次のとおり定義する。
ENQ n:
待ち行列にデータnを挿入する。
DEQ :
待ち行列からデータを取り出す。
 空の待ち行列に対し,ENQ1,ENQ2,ENQ3,DEQ,ENQ4,ENQ5,DEQ,ENQ6,DEQ,DEQの操作を行った。次にDEQ操作を行ったとき,取り出されるデータはどれか。
  • [この問題の出題歴]
  • 基本情報技術者 H15春期 問13
  • 基本情報技術者 H25秋期 問5

分類

テクノロジ系 » アルゴリズムとプログラミング » データ構造

正解

解説

待ち行列(キュー構造)は、先に入ったものから先に取り出す「先入先出し方式」のデータ構造です。左を待ち行列の入口、右を出口として操作に伴う待ち行列の変化を追っておきます。

ENQ1: [1]
ENQ2: [2][1]
ENQ3: [3][2][1]
DEQ:  [3][2] → [1]
ENQ4: [4][3][2]
ENQ5: [5][4][3][2]
DEQ:  [5][4][3] → [2]
ENQ6: [6][5][4][3]
DEQ:  [6][5][4] → [3]
DEQ:  [6][5] → [4]

次に行われるDEQ操作で取り出される値が答えとなります。

DEQ:  [6] →[5]

したがって答えは「5」が適切です。
© 2010-2019 基本情報技術者試験ドットコム All Rights Reserved.

Pagetop