次の二つのスタック操作を定義する。
PUSH n :スタックにデータ (整数値n) をプッシュする。
POP:スタックからデータをポップする。
空のスタックに対して、次の順序でスタック操作を行った
結果はどれか。
PUSH 1 → PUSH 5 → POP → PUSH 7
→ PUSH 6 → PUSH 4 → POP → POP
→ PUSH 3
ア│ │ イ│ │ ウ│ │ エ│ │
├─┤ ├─┤ ├─┤ ├─┤
│1│ │3│ │3│ │6│
├─┤ ├─┤ ├─┤ ├─┤
│7│ │4│ │7│ │4│
├─┤ ├─┤ ├─┤ ├─┤
│3│ │6│ │1│ │3│
└─┘ └─┘ └─┘ └─┘
スタックの状態は以下のように変化していく。
※便宜上、スタックの状態を左から順に表記する。
push 1 ・・・ 1
push 5 ・・・ 5, 1
pop ・・・ 1
push 7 ・・・ 7, 1
push 6 ・・・ 6, 7, 1
push 4 ・・・ 4, 6, 7, 1
pop ・・・ 6, 7, 1
pop ・・・ 7, 1
push 3 ・・・ 3, 7, 1
従って、上から順に 3、7、1が正解。
EXCEL VBAのご相談なら ファーストマクロ へ
タグ:スタック