スタック

正解は ウ (c,a,b)です。 この装置は、最後に積んだものから取り出す スタック (LIFO:Last-In First-Out)です。品物は a → b → c の順に届くので、各選択肢の順に取り出せるかを PUSH / POP の操作で確かめます。 選択肢 取出し順 操作の例 判定 ア a,b,c PUSH a, POP, PUSH b, POP, PUSH c, POP 可能 イ b,a,c PUSH a, PUSH b, POP, POP, PUSH c, POP 可能 ウ c,a,b c を出した時点で b が a の上にある 不可能 エ c,b,a PUSH a, PUSH b, PUSH c, POP, POP, POP 可能 c を最初に取り出すには、c が届くまで a と b を積んだままにしておく必要があります。そのとき a の上には b があるので、次に取り出せるのは b です。したがって「c,a,b」の順は あり得ません 。

下から上へ品物を積み上げて,上にある品物から順に取り出す装置がある。この装置に対する操作は,次の二つに限られる。

PUSH x:品物xを1個積み上げる。POP:一番上の品物を1個取り出す。

最初は何も積まれていない状態から開始して,a,b,cの順で三つの品物が到着する。一つの装置だけを使った場合,POP操作で取り出される品物の順番としてあり得ないものはどれか。

q62-figure-1
出典令和元年度秋期 ITパスポート試験 公開問題 問62
ア
a,b,c
イ
b,a,c
ウ
c,a,b
エ
c,b,a