2019年10月15日

平成29年度秋期 基本情報技術者試験問題 問5

問5

A、B、C、Dの順に到着するデータに対して、一つのスタックだけを用いて出力可能なデータ列はどれか。

ア A、D、B、C

イ B、D、A、C

ウ C、B、D、A

エ D、C、A、B





正解


解説

スタックはLIFO (後入れ先出し) によりデータ列を操作する。
スタックに入れることをpush、スタックから出すことをpopという。

ア A、Dまでは出力可能。
イ B、Dまでは出力可能。
ウ 正しい。手順は以下の通り。
 (便宜上、スタックの状態を左から順位表記する。)
 Aをpush: スタック:   
 Bをpush: スタック:A
 Cをpush: スタック:AB
 Cをpop : スタック:AB  出力:
 Bをpop : スタック:A   出力:C
 Dをpush: スタック:A  出力:CB
 Dをpop : スタック:A   出力:CB
 Aをpop : スタック:    出力:CBD
エ D、Cまでは出力可能。

タグ:スタック
posted by ファーストマクロ at 20:18| Comment(0) | H29秋基本情報技術者
この記事へのコメント
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント: