逆ポーランド記法 | 応用情報技術者試験
逆ポーランド記法とは
逆ポーランド記法(ぎゃくぽーらんどきほう)とは、数式を書くときに、演算子(+やーなどの記号)を数値の「後ろ」に配置する書き方のことです。「後置記法」とも呼ばれます。私たちが普段使っている「3 + 4」のような書き方は「中置記法」と呼ばれ、演算子が数値の間にあります。これに対して逆ポーランド記法では「3 4 +」と書きます。この書き方の最大のメリットは、カッコ「( )」を使わなくても計算の優先順位を一切曖昧にすることなく表現できる点です。コンピュータのメモリ管理構造の1つである「スタック」と非常に相性が良く、コンピュータが数式を左から順に読み込んで高速かつシンプルに計算処理を行うために最適化された記法です。
具体例
カッコを使った少し複雑な式「 (1 + 2) × 4 」を、逆ポーランド記法に変換してみましょう。
通常の数式: (1 + 2) × 4
逆ポーランド記法: 1 2 + 4 ×
【コンピュータの計算手順】
1. 左から順に数字の「1」と「2」を一時保管(スタックに積む)します。
2. 次の「+」を読み込んだら、保管してある「1」と「2」を足して「3」にします。
3. 次の数字「4」を一時保管します。
4. 最後の「×」を読み込んだら、「3」と「4」を掛けて、答えの「12」を得ます。