基礎理論
アルゴリズム
コンピュータ構成要素
システム構成要素
ソフトウェア
ハードウェア
ヒューマンインタフェース
マルチメディア
データベース
ネットワーク
セキュリティ
システム開発技術
ソフトウェア開発管理技術
😀 mypage
🥇 ranking
📊 chart
📏 rule
No.48 空の状態のキューとスタックの二つのデータ構造がある。
次の手続を順に実行した場合,変数xに代入されるデータはどれか。
ここで,手続きに引用している関数は,次のとおりとする。


〔関数の定義〕
push(y):データyをスタックに積む。
pop():データをスタックから取り出して,その値を返す。
enq(y):データyをキューに挿入する。
deq():データをキューから取り出して,その値を返す。

〔手続〕
push(a)push((***))enq(pop())enq(c)push(d)push(deq())x ← pop()
⭕️
💾
🖊 ☑️
⭕️ [[ AnswerCalc[0] ]] % A [[ AnswerCalc[1] ]]
スタックは後入先出し、キューは先入先出しのデータ構造です。設問の手続きの実行するとスタックとキューの内容は次のように変化していきます。
  1. push(a)…aをスタックに挿入する
    push(a)
  2. push(b)…bをスタックに挿入する
    push(b)
  3. enq(pop())…スタックから取り出したデータ(b)をキューに挿入する
    enq(pop())
  4. enq(c)…cをキューに挿入する
    enq(c)
  5. push(d)…dをスタックに挿入する
    push(d)
  6. push(deq())…キューから取り出したデータ(b)をスタックに挿入する
    push(deq())
  7. x←pop()…スタックから取り出したデータ(b)をxに代入する
    x←pop()
したがってxに代入されるデータはbになります。
💾 ✔️
[[ d.CommentTxt ]]
🏠 >   基本情報技術者試験 >     テクノロジー >     アルゴリズム >  
< >
🥇