過去問.com - 資格試験の過去問 | 予想問題の解説つき無料問題集

ITパスポートの過去問 平成28年度 秋期 テクノロジ系 問92

問題

このページは問題閲覧ページです。正解率や解答履歴を残すには、 「条件を設定して出題する」をご利用ください。
[ 設定等 ]
後に入れたデータが先に取り出されるデータ構造(以下、スタックという)がある。これを用いて、図に示すような、右側から入力されたデータの順番を変化させて、左側に出力する装置を考える。この装置に対する操作は次の3通りである。

①右側から入力されたデータをそのまま左側に出力する。
②右側から入力されたデータをスタックの1番上に積み上げる。
③スタックの1番上にあるデータを取り出して左側に出力する。

この装置の右側から順番にデータA、B、C、Dを入力した場合に、この①~③の操作を組み合わせても、左側に出力できない順番はどれか。
問題文の画像
   1 .
B、A、D、C
   2 .
B、D、C、A
   3 .
C、B、D、A
   4 .
C、D、A、B
( 平成28年度 秋期 ITパスポート試験 テクノロジ系 問92 )
このページは問題閲覧ページの為、解答履歴が残りません。
解答履歴を残すには、
条件を設定して出題する」をご利用ください。

この過去問の解説 (3件)

6
問題文の①~③を使って各選択肢の順番にデータが取り出せるかどうか確認していきましょう。

1.B、A、D、Cの順にデータを取り出すためには、
以下の順番でデータを入出力すればよいです。
①Aのデータをスタックに積み上げる
②Bのデータをそのまま出力する
③Aのデータをスタックから取り出して出力する
④Cのデータをスタックに積み上げる
⑤Dのデータをそのまま出力する
⑥Cのデータをスタックから取り出して出力する
よって、誤りです。

2.B、D、C、Aの順にデータを取り出すためには、
以下の順番でデータを入出力すればよいです。
①Aのデータをスタックに積み上げる
②Bのデータをそのまま出力する
③Cのデータをスタックに積み上げる
④Dのデータをそのまま出力する
⑤Cのデータをスタックから取り出して出力する
⑥Aのデータをスタックから取り出して出力する
よって、誤りです。

3.C、B、D、Aの順にデータを取り出すためには、
以下の順番でデータを入出力すればよいです。
①Aのデータをスタックに積み上げる
②Bのデータをスタックに積み上げる
③Cのデータをそのまま出力する
④Bのデータをスタックから取り出して出力する
⑤Dのデータをそのまま出力する
⑥Aのデータをスタックから取り出して出力する
よって、誤りです。

4.C、D、A、Bの順にデータを取り出すためには、
以下の順番でデータを入出力すればよいです。
①Aのデータをスタックに積み上げる
②Bのデータをスタックに積み上げる
③Cのデータをそのまま出力する
④Dのデータをそのまま出力する
④の次に取り出せるデータは、②で積み上げたBです。
よって、選択肢の順番でデータを取り出すことはできないため、正解です。

付箋メモを残すことが出来ます。
3
正解は、4です。

C、D、A、Bの順で出力することはできません。
下記のようになります。

① Aをスタックへプッシュします。
② Bをスタックへプッシュします。
③ Cをそのまま出力します。
④ Dをそのまま出力します。
⑤ スタックからポップすると、Bが取り出されるのでBしか出力できません。
⑥ もう1度ポップすると、Aが取り出されるもののBの後にしか出力できません。

1
1 「B、A、D、C」の順に取り出すには下記のようになりますので、取り出すことは可能です。

1.Aを②の手順でスタックに入れる
2.Bを①の手順でそのまま左に出力する(B出力)
3.Aを③の手順で取り出して出力する(A出力)
3.Cを②の手順でスタックに入れる
4.Dを②の手順でスタックに入れる
5.上から順に取り出す(D→Cの順に出力)


2 「B、D、C、A」の順に取り出すには下記のようになりますので、取り出すことは可能です。

1.Aを②の手順でスタックに入れる
2.Bを①の手順でそのまま左に出力する(B出力)
3.Cを②の手順でスタックに入れる
4.Dを②の手順でスタックに入れる
5.上から順に取り出す(D→C→Aの順に出力)



3 「C、B、D、A」の順に取り出すには下記のようになりますので、取り出すことは可能です。

1.Aを②の手順でスタックに入れる
2.Bを②の手順でスタックに入れる
3.Cを①の手順でそのまま左に出力する(C出力)
4.Bを③の手順でスタックから取り出す(B出力)
4.Dを①の手順でそのまま左に出力する(D出力)
5.Aを③の手順でスタックから取り出す(A出力)


4 「C、D、A、B」の順に取り出すには、C→Dの順に取り出してしまうとA→Bの順には取り出すことができません。
よって正解は4となります。

1.Aを②の手順でスタックに入れる
2.Bを②の手順でスタックに入れる
3.Cを①の手順でそのまま左に出力する(C出力)
4.Dを①の手順でそのまま左に出力する(D出力)
5.この時点で、B→Aの順にしか取り出すことができない

問題に解答すると、解説が表示されます。
解説が空白の場合は、広告ブロック機能を無効にしてください。
他のページから戻ってきた時、過去問ドットコムはいつでも続きから始めることが出来ます。
また、広告右上の×ボタンを押すと広告の設定が変更できます。
このITパスポート 過去問のURLは  です。
付箋は自分だけが見れます(非公開です)。