Problem
Ask
Submissions

Problem: Evaluate Reverse Polish Notation

Medium
30 min
Explore how to evaluate arithmetic expressions written in Reverse Polish Notation. This lesson helps you apply operators and operands correctly, ensuring division truncates toward zero. Understand the problem constraints and implement an efficient solution with O(n) time complexity to return the correct expression value.

Statement

Given an arithmetic expression in a Reverse Polish Notation (RPN)Reverse Polish Notation is a mathematical notation in which every operator follows all of its operands. as an array of strings, tokens, your task is to evaluate and return the value of the given expression.

Points to consider:

  • Valid operators are +, -, *, and /.

  • Each operand can be an integer or another expression.

  • The division between two integers should truncate toward zero.

The given Reverse Polish Notation expression is guaranteed to be valid. This ensures that the expression always evaluates to a result and that there are no division-by-zero operations.

Constraints:

  • 11 \leq tokens.length 103\leq 10^3

  • tokens[i] is either an operator (+, -, *, or /) or an integer in the range [200,200][-200, 200].

Problem
Ask
Submissions

Problem: Evaluate Reverse Polish Notation

Medium
30 min
Explore how to evaluate arithmetic expressions written in Reverse Polish Notation. This lesson helps you apply operators and operands correctly, ensuring division truncates toward zero. Understand the problem constraints and implement an efficient solution with O(n) time complexity to return the correct expression value.

Statement

Given an arithmetic expression in a Reverse Polish Notation (RPN)Reverse Polish Notation is a mathematical notation in which every operator follows all of its operands. as an array of strings, tokens, your task is to evaluate and return the value of the given expression.

Points to consider:

  • Valid operators are +, -, *, and /.

  • Each operand can be an integer or another expression.

  • The division between two integers should truncate toward zero.

The given Reverse Polish Notation expression is guaranteed to be valid. This ensures that the expression always evaluates to a result and that there are no division-by-zero operations.

Constraints:

  • 11 \leq tokens.length 103\leq 10^3

  • tokens[i] is either an operator (+, -, *, or /) or an integer in the range [200,200][-200, 200].