ウカマル応用情報技術者ログイン

平成28年度 春期 応用情報技術者 問5

テクノロジ系

A,B,C の順序で入力されるデータがある。各データについてスタックへの挿入と取出しを 1 回ずつ行うことができる場合,データの出力順序は何通りあるか。

図

図の内容(文字)
右側から「A,B,C」が矢印でスタック(上部が開いた箱)に入り,スタックの上部から左向きの矢印でデータが取り出される。
選択肢
正解と解説

正解 ウ

スタックは後入れ先出しなので、C、A、Bの順だけは出力できません。出力順序は3!=6通りから1を引いた5通りです。

スタックはLIFO(Last In First Out)で、最後に入れたデータから取り出します。各データの挿入と取出しの時機を組み合わせると、出力できる順序はABC、ACB、BAC、BCA、CBAの5通りです。CABは、Cを最初に出すにはA、Bを先に入れておく必要があります。その場合、スタックの上にあるのはBなので、Aより先にBが出ます。したがって、CABは作れません。

ア:出力できる順序の数え漏れです。ABC、ACB、BAC、BCA、CBAの5通りが出力できます。

イ:出力できる順序の数え漏れです。Aを最初に出す順は2通り、Bを最初に出す順は2通り、Cを最初に出す順は1通りあり、合計5通りです。

エ:6通りは3個の並べ方すべて(3!)です。スタックではCABの順に出力できないので、6通りにはなりません。

出典:平成28年度 春期 応用情報技術者試験 問5

全年度から出題。10問で実力を判定します。登録不要。

出典:平成28年度 春期 応用情報技術者試験 問5(独立行政法人情報処理推進機構)

解説と用語ページは生成 AI が書き、別の生成 AI が確かめています。作り方