過去問解きまくり研究所 ホーム

平成22年度 秋期 午前 問5

データ構造

スタックに関する問題

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

答えと解説を見る

✓ これが正解ウC, B, D, A

解説

内側に残る文字は到着とは逆の順にしか出せません。

スタックは、最後に入れたものが先に出る入れ物です。データは到着した順にしか入れられないので、ある文字を取り出した時点で中に残っている文字は、必ず到着とは逆の並びで積み上がっています。そこで出力列を左から1文字ずつ見て、その文字を出すまでに何を積むことになるかをたどれば、実現できるかどうかが判定できます。正解の列は、まず3文字を積んでから2文字を取り出し、次の1文字を積んで取り出し、最後に底に残っていた1文字を取り出す順で作れます。判定の軸は、取り出した直後に上にくる文字が、出力列の次の文字と一致しているかどうかです。ここが食い違うと、その先はどう入れ替えても作れません。

ほかの選択肢はなぜ違うのか

出典:平成22年度 秋期 基本情報技術者試験 午前 問5

この解説に誤りを見つけたら教えてください。直して、直した記録を残します。誤りを報告する(メールが開きます)