平成30年春期試験問題 午前問5

問5解説へ
次の二つのスタック操作を定義する。
PUSH n:スタックにデータ(整数値n)をプッシュする。
POP:スタックからデータをポップする。
空のスタックに対して,次の順序でスタック操作を行った結果はどれか。
PUSH 1 → PUSH 5 → POP → PUSH 7 → PUSH 6 → PUSH 4 → POP → POP → PUSH 3
PUSH n:スタックにデータ(整数値n)をプッシュする。
POP:スタックからデータをポップする。
空のスタックに対して,次の順序でスタック操作を行った結果はどれか。
PUSH 1 → PUSH 5 → POP → PUSH 7 → PUSH 6 → PUSH 4 → POP → POP → PUSH 3
広告
解説
コンピュータの世界で使われるデータ構造のひとつに「スタック」があります。スタックは、最後に格納したデータから先に取り出す後入れ先出し(Last-in First-out:LIFO)の構造をもちます。
スタックでは、データを挿入するPUSH命令、データを取り出すPOP命令を使用してデータ操作を行います。
空のスタックを命令通りに操作していくと、
スタックでは、データを挿入するPUSH命令、データを取り出すPOP命令を使用してデータ操作を行います。

- PUSH 1
- 1
- PUSH 5
- 1,5
- POP
- 1
- PUSH 7
- 1,7
- PUSH 6
- 1,7,6
- PUSH 4
- 1,7,6,4
- POP
- 1,7,6
- POP
- 1,7
- PUSH 3
- 1,7,3
広告