Evaluate Reverse Polish Notation

Try to solve the Evaluate Reverse Polish Notation problem.

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:

  • 1≤1 \leq tokens.length ≤103\leq 10^3

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

Examples