Basic Calculator II
mediumTime: O(n)Space: O(n)
Recognize the pattern
evaluate +, -, ×, ÷ without parenthesesoperator precedencestack for deferred addition
Brute force idea
Not applicable — parsing requires precedence handling.
Better approach
Stack: for + and -, push number (with sign). For × and ÷, pop top, compute, push result. Sum stack at end. O(n).
Key invariant
× and ÷ resolve immediately (high precedence). + and - are deferred (pushed). Final sum = the answer.
Watch out for
Integer division toward zero — use Math.trunc(), not Math.floor().