アフィリエイト広告を利用しています

広告

posted by fanblog

ITパスポート過去問 28年秋 問92

28年秋 問題一覧へ


問題


問92 後に入れたデータが先に取り出されるデータ構造(以下,スタックという)がある。これを用いて,図に示すような,右側から入力されたデータの順番を変化させて,左側に出力する装置を考える。この装置に対する操作は次の3通りである。
@右側から入力されたデータをそのまま左側に出力する。
A右側から入力されたデータをスタックの1番上に積み上げる。
Bスタックの1番上にあるデータを取り出して左側に出力する。

この装置の右側から順番にデータ A,B,C,D を入力した場合に,この@〜Bの操作を組み合わせても,左側に出力できない順番はどれか。

0920.png


ア B,A,D,C    イ B,D,C,A
ウ C,B,D,A    エ C,D,A,B



解説


スタックに対するデータ操作は、プッシュとポップがあるが、プッシュは、スタックの1番上にデータを積み上げることで、また、ポップは、スタックの1番上にあるデータを取り出すことである。
スタックには、データを複数入れることができるが、1番上にしか入れることができない。
また、スタックに、データが複数入っていても、取り出すことができるのは、1番上のデータだけ。

このことから、ア〜エのような出力ができるかをそれぞれ見ていくと、次のようになる。

■ア 次のようにすれば、B,A,D,Cと出力できる
1 Aをスタックへプッシュ
2 Bをそのまま出力
3 Aをスタックからポップして出力
4 Cをスタックへプッシュ
5 Dをそのまま出力
6 Cをスタックからポップして出力

■イ 次のようにして、B,D,C,Aと出力できる
1 Aをスタックへプッシュ
2 Bをそのまま出力
3 Cをスタックへプッシュ
4 Dをそのまま出力
5 Cをスタックからポップして出力
6 Aをスタックからポップして出力

■ウ 次のようにして、C,B,D,Aと出力できる 
1 Aをスタックへプッシュ
2 Bをスタックへプッシュ
3 Cをそのまま出力
4 Bをスタックからポップして出力
5 Dをそのまま出力
6 Aをスタックからポップして出力

■エ C,D,A,Bの順で出力することはできない
1 Aをスタックへプッシュ
2 Bをスタックへプッシュ
3 Cをそのまま出力
4 Dをそのまま出力
5 スタックからポップするとBが取り出されるのでBしか出力できない
6 もう1回ポップすると今度はAが取り出されるが、Bの後にしか出力できない

このことから、エが正解となる




28年秋 問題一覧へ









にほんブログ村 IT技術ブログ IT技術情報へ
にほんブログ村


トラックバック

この記事へのトラックバックURL
※ブログオーナーが承認したトラックバックのみ表示されます。
※言及リンクのないトラックバックは受信されません。
https://fanblogs.jp/tb/6013473

コメント

お名前: [必須入力]

メールアドレス: [必須入力]

ホームページアドレス: [必須入力]

コメント: [必須入力]


この記事へのコメント

   
×

この広告は30日以上新しい記事の更新がないブログに表示されております。