令和2年免除試験問題 問8
問8解説へ
加減乗除を組み合わせた計算式の処理において,スタックを利用するのが適している処理はどれか。
- 格納された計算の途中結果を,格納された順番に取り出す処理
- 計算の途中結果を格納し,別の計算を行った後で,その計算結果と途中結果との計算を行う処理
- 昇順に並べられた計算の途中結果のうち,中間にある途中結果だけ変更する処理
- リストの中間にある計算の途中結果に対して,新たな途中結果の挿入を行う処理
広告
解説
スタックは、後入先出し方式でデータを入出力するデータ構造で、データを追加するプッシュ命令(push)と最後に格納されたデータを取り出すポップ命令(pop)でデータ操作を行います。サブルーチン終了後の戻りアドレスや局所変数などを保持するのに使用されます。
- 格納された順に取り出するにはキューのように先入先出し構造をもつ必要があります。
- 正しい。スタックは後入先出しのデータ構造なので、最後に追加データとの演算を容易に行うことができます。
- 単純なスタック構造では最後に格納されたデータしか取り出せないので、途中のデータだけを変更することはできません。
- 「ウ」と同じ理由でスタックではできない処理です。
広告