ITパスポートの過去問
平成28年度 秋期
テクノロジ系 問92
このページは閲覧用ページです。
履歴を残すには、 「新しく出題する(ここをクリック)」 をご利用ください。
問題
平成28年度 秋期 ITパスポート試験 テクノロジ系 問92 (訂正依頼・報告はこちら)
後に入れたデータが先に取り出されるデータ構造(以下、スタックという)がある。これを用いて、図に示すような、右側から入力されたデータの順番を変化させて、左側に出力する装置を考える。この装置に対する操作は次の3通りである。
①右側から入力されたデータをそのまま左側に出力する。
②右側から入力されたデータをスタックの1番上に積み上げる。
③スタックの1番上にあるデータを取り出して左側に出力する。
この装置の右側から順番にデータA、B、C、Dを入力した場合に、この①~③の操作を組み合わせても、左側に出力できない順番はどれか。
①右側から入力されたデータをそのまま左側に出力する。
②右側から入力されたデータをスタックの1番上に積み上げる。
③スタックの1番上にあるデータを取り出して左側に出力する。
この装置の右側から順番にデータA、B、C、Dを入力した場合に、この①~③の操作を組み合わせても、左側に出力できない順番はどれか。
- B、A、D、C
- B、D、C、A
- C、B、D、A
- C、D、A、B
正解!素晴らしいです
残念...
この過去問の解説 (3件)
01
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です。
よって、選択肢の順番でデータを取り出すことはできないため、正解です。
参考になった数9
この解説の修正を提案する
02
C、D、A、Bの順で出力することはできません。
下記のようになります。
① Aをスタックへプッシュします。
② Bをスタックへプッシュします。
③ Cをそのまま出力します。
④ Dをそのまま出力します。
⑤ スタックからポップすると、Bが取り出されるのでBしか出力できません。
⑥ もう1度ポップすると、Aが取り出されるもののBの後にしか出力できません。
参考になった数5
この解説の修正を提案する
03
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の順にしか取り出すことができない
参考になった数2
この解説の修正を提案する
前の問題(問91)へ
平成28年度 秋期問題一覧
次の問題(問93)へ