# What Is Prefix Expression in Data Structure?

//

Angela Bailey

What Is Prefix Expression in Data Structure?

In the field of data structure, a prefix expression, also known as Polish notation, is a way of representing arithmetic expressions. It was introduced by the Polish logician Jan Łukasiewicz in the 1920s.

## Prefix Notation

In prefix notation, operators are written before their operands. This is in contrast to the more common infix notation, where operators are placed between operands. For example, in infix notation, the expression “3 + 4” would be written as “3 + 4”, while in prefix notation it would be written as “+ 3 4”.

This difference in notation may seem insignificant at first glance, but it has some important implications.

## Evaluating Prefix Expressions

Evaluating a prefix expression involves scanning the expression from right to left. When an operator is encountered, it is applied to the immediately following operands. This process continues until all operators have been applied and a single value remains.

To illustrate this process, let’s consider the prefix expression “+ * 5 – 6 8 2”.

### Step 1:

• Scan from right to left and encounter “*” operator.
• The next two values encountered are “5” and “-“.
• Multiply these two values: “5 * -” = “-5”.
• Replace these three values with their result: “+ -5 6 8 2”.

### Step 2:

• The next operator encountered is “+”.
• The next value encountered is “-5”.
• Add these two values: “+ -5” = “-5”.
• Replace these three values with their result: “-5 6 8 2”.

### Step 3:

• The next operator encountered is “-“.
• The next two values encountered are “6” and “8”.
• Subtract these two values: “6 – 8” = “-2”.
• Replace these three values with their result: “-5 -2 2”.

### Step 4:

• The final operator encountered is “-“.
• The next two values encountered are “-5” and “2”.
• Subtract these two values: “-5 – 2” = “-7”.
• Replace these three values with their result: “-7 2”.

After evaluating all the operators, the final result of the prefix expression “+ * 5 – 6 8 2” is “-7”.

• Simplicity: Prefix notation eliminates the need for parentheses or precedence rules, making expressions simpler to evaluate.
• Ease of Parsing: Scanning a prefix expression from right to left allows for straightforward parsing, especially in computer programs.
• No Ambiguity: Unlike infix notation, prefix notation avoids any ambiguity in the order of operations.