令和3年春期試験問題 午前Ⅰ 問2
正解 ウ問題へ
分野 :テクノロジ系
中分類:アルゴリズムとプログラミング
小分類:データ構造
中分類:アルゴリズムとプログラミング
小分類:データ構造
広告
解説
A,B,Cの出力順序としては「3!=6種類」があるので、それぞれが出力可能であるかを検証します。
[A,B,C]
push(A) → pop → push(B) → pop → push(C) → pop の順序で出力可能です。
[A,C,B]
push(A) → pop → push(B) → push(C) → pop → pop の順序で出力可能です。
[B,A,C]
push(A) → push(B) → pop → pop → push(C) → pop の順序で出力可能です。
[B,C,A]
push(A) → push(B) → pop → push(C) → pop → pop の順序で出力可能です。
[C,A,B]
push(A) → push(B) → push(C) → pop → pop ×
※Cを一番最初に出力する場合、Bより先にAを出力することができないため無理な順序です。
[C,B,A]
push(A) → push(B) → push(C) → pop → pop → pop の順序で出力可能です。
したがって、データの出力順序は5通りになります。
[A,B,C]
push(A) → pop → push(B) → pop → push(C) → pop の順序で出力可能です。
[A,C,B]
push(A) → pop → push(B) → push(C) → pop → pop の順序で出力可能です。
[B,A,C]
push(A) → push(B) → pop → pop → push(C) → pop の順序で出力可能です。
[B,C,A]
push(A) → push(B) → pop → push(C) → pop → pop の順序で出力可能です。
[C,A,B]
push(A) → push(B) → push(C) → pop → pop ×
※Cを一番最初に出力する場合、Bより先にAを出力することができないため無理な順序です。
[C,B,A]
push(A) → push(B) → push(C) → pop → pop → pop の順序で出力可能です。
したがって、データの出力順序は5通りになります。
広告