空のスタックに対して次の操作を行った場合、スタックに残っているデータはどれか。
ここで、“push x ”はスタックへデータx を格納し、“pop”はスタックからデータを取り出す操作を表す。
push 1 → push 2 → pop → push 3 → push 4 → pop → push 5 → pop
答え ア
【解説】
[ ]をスタックの状態とすると
- 「push 1」で“1”をスタックに格納し [1]
- 「push 2」で“2”をスタックに格納し [2, 1]
- 「pop」でスタックから“2”を取り出し [1]
- 「push 3」で“3”をスタックに格納し [3, 1]
- 「push 4」で“4”をスタックに格納し [4, 3, 1]
- 「pop」でスタックから“4”を取り出し [3, 1]
- 「push 5」で“5”をスタックに格納し [5, 3, 1]
- 「pop」でスタックから“5”を取り出し [3, 1]
したがって、スタックに残っているのは“ 1と3”(ア)である。
【キーワード】
・スタック
【キーワードの解説】
- スタック
データを一時的に記憶するためにメモリに割り当てる領域のことです。
データの取り出しを行うとき、取り出されるデータは最後に挿入されたデータになるので、後入れ先出し方式(Last-In First-Out、LIFO)とも呼ばれます。
もっと、「スタック」について調べてみよう。
戻る
一覧へ
次へ
|