ITパスポート試験 過去問解説

スタックとは?ITパスポート試験 2010年 (平成22年 春期) 問85を解説

ITパスポート試験 2010年 (平成22年 春期) 問85は、スタックに関する理解を問う問題です。検索から入っても、問題文、選択肢、正解、解説、各選択肢がなぜ違うかをこのページだけで確認できます。

問題文

下から上へデータを積み上げ,上にあるデータから順に取り出すデータ構造(以下,スタックという)がある。これを用いて,図に示すような,右側から入力されたデータの順番を変化させて,左側に出力する装置を考える。この装置に対する操作は次の3通りである。 ① 右側から入力されたデータをそのまま左側に出力する。 ② 右側から入力されたデータをスタックに積み上げる。 ③ スタックの1番上にあるデータを取り出して左側に出力する。 この装置の右側から順にX,Y,Zを入力した場合に,この①~③の操作を組み合わせても,左側に出力できない順番はどれか。
スタックを使って入力の順番を変える装置の図 (右から X, Y, Z を入力し、①そのまま左へ出力、②スタックに積む、③スタックの一番上を取り出して左へ出力)

この問題の出題ポイント

  • スタックの定義だけでなく、問題文中の条件がどの選択肢に当てはまるかを確認する。
  • テクノロジ系分野では、用語の目的・主体・責任範囲の違いが選択肢で問われやすい。
  • 関連タグ: スタック、LIFO。

選択肢

  1. アX,Z,Y
  2. イY,Z,X
  3. ウZ,X,Y正解
  4. エZ,Y,X

正解

ウ: Z,X,Y

解説

スタックは後入れ先出しなので、積んだデータは最後に積んだものから取り出される。Zを最初に出力するには、先に入力されたXとYを積んでおく必要がある。このときYがXの上にあるため、そのあとに取り出せるのはY、Xの順になる。したがって、Z、X、Yの順には出力できない。

なぜ他の選択肢が違うのか

  • ア

    Xをそのまま出力し、Yを積み、Zをそのまま出力して、最後にYを取り出せば得られる。出力できる順である。

  • イ

    Xを積み、YとZをそのまま出力して、最後にXを取り出せば得られる。出力できる順である。

  • ウ(正解)

    正しい。Zを最初に出力するにはXとYを積む必要があり、積んだ後に取り出せるのはYが先でXが後になる。X、Yの順には出力できない。

  • エ

    XとYを積み、Zをそのまま出力して、YとXの順に取り出せば得られる。出力できる順である。

解き方の整理

スタックの問題では、選択肢のキーワードだけで判断せず、問題文が示す条件と正解選択肢の説明が一致しているかを見ます。誤答選択肢は、似た用語を混ぜる、主体を入れ替える、目的や範囲を広げすぎる、という形で作られることが多いため、選択肢別解説まで確認しておくと復習効率が上がります。

関連用語

関連問題

前後の問題

2010年 (平成22年 春期) の関連する問題

復習を続ける

間違えた問題、苦手タグ、模試履歴を保存して復習する導線を用意しています。広告なしPro、弱点分析、復習リマインダーは段階的に提供予定です。