ITパスポート 平成21年度 秋期 問54
基礎理論
スタックに関する問題
数字が書かれた箱を図のように積み上げてある。表に示す操作を,操作 1,操作 2,操作 3,操作 4 の順に行った場合,操作 4 が終わったときの箱の状態はどれか。
〔図〕積み上げた箱(上から下へ) ┌───┐ │ 4 │ ← 一番上 ├───┤ │ 3 │ ├───┤ │ 2 │ ├───┤ │ 2 │ ├───┤ │ 1 │ ← 一番下 └───┘ 〔表〕
| 操作名 | 操作の |
|---|---|
| 操作1 | 箱を上から二つ取り出し,取り出した箱に書かれた値を加算した値を書いた箱を新たに一番上に積む。 |
| 操作2 | 数字 3 を書いた箱を新たに一番上に積む。 |
| 操作3 | 箱を上から三つ取り出し,取り出した箱に書かれた値の平均値を求める。その平均値を書いた箱を新たに一番上に積む。 |
| 操作4 | 箱を上から二つ取り出し,取り出した箱に書かれた値の差の絶対値を求める。その絶対値を書いた箱を新たに一番上に積む。 |
〔選択肢の図〕いずれも積み上げた箱(上から下へ) ア … 0 イ … 2 / 1 ウ … 4 / 2 / 1 エ … 1 / 2 / 2 / 1
- ア 箱が1つ。上から「0」
- イ 箱が2つ。上から「2」「1」
- ウ 箱が3つ。上から「4」「2」「1」
- エ 箱が4つ。上から「1」「2」「2」「1」
答えと解説
✓ これが正解イ 箱が2つ。上から「2」「1」
解説
取り出すのも積むのも一番上なので、順に追えば出ます。
積み上げた箱は、取り出すのも積むのも一番上だけです。この出し入れの形をスタックと呼び、後入れ先出しになります。初めの並びは、上から四、三、二、二、一の五つです。初めの操作は上の二つを抜いて足すもので、四と三で七になり、それを積むと上から七、二、二、一になります。二つ目の操作は三を積むだけなので、五つに戻ります。三番目の操作では上から三つを抜いて平均を取り、三と七と二を足した十二を三で割って四になります。それを積むと、上から四、二、一の三つです。最後の操作では、抜いた二つの差の絶対値を積みます。四と二の差は二なので、これを積むと上から二、一の二つになります。この形を挙げた選択肢が正解で、箱は二つだけ残ります。シラバスも、スタックをデータの持ち方の用語に挙げています。
ほかの選択肢の解説
- ア 箱が1つ。上から「0」:箱が一つで、零だけが残ると述べた選択肢です。最後まで取り出し続けたような形に見えますが、四つ目の操作でも一つは積み直しますし、下に残っていた一も動かされていません。箱の数が合っていません。
- ウ 箱が3つ。上から「4」「2」「1」:上から四、二、一の三つを挙げた選択肢です。これは三つ目の操作を終えた時点の並びですが、設問が問うているのは四つ目まで終えた後です。あと一手進めれば二と一の二つになるので、途中で止めた形です。
- エ 箱が4つ。上から「1」「2」「2」「1」:上から一、二、二、一の四つを挙げた選択肢です。初めの並びに近い形で四つが残っていますが、操作を通すと箱は減っていきます。取り出す数のほうが積む数より多いからで、途中で数え違えるとこの辺りに落ちます。
関連用語
- スタック取り出すのも積むのも一番上だけという、データの出し入れの形です。
出典:平成21年度 秋期 ITパスポート試験 問54(改変:原典の図表をテキストに書き起こした)
解説は当サイト独自のもので、IPA(独立行政法人情報処理推進機構)とは関係ありません。
関連問題
- 平成30年度 秋期 (特別措置試験) 問76:
スタックからの データの 取出し方 (スタック) - 平成30年度 春期 (特別措置試験) 問96:
キューに 関する 問題 (スタック) - 平成28年度 秋期 (特別措置試験) 問92:
スタックに 関する 問題 (スタック) - 平成22年度 春期 問85:
スタックに 関する 問題 (スタック)
同じ分野の問題
誤りを見つけたら報告する