mirror of
https://github.com/youngyangyang04/leetcode-master.git
synced 2025-07-10 04:06:51 +08:00
Update 0150.逆波兰表达式求值.md
This commit is contained in:
@ -170,7 +170,32 @@ public class EvalRPN {
|
|||||||
|
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
Go:
|
||||||
|
```Go
|
||||||
|
func evalRPN(tokens []string) int {
|
||||||
|
stack := []int{}
|
||||||
|
for _, token := range tokens {
|
||||||
|
val, err := strconv.Atoi(token)
|
||||||
|
if err == nil {
|
||||||
|
stack = append(stack, val)
|
||||||
|
} else {
|
||||||
|
num1, num2 := stack[len(stack)-2], stack[(len(stack))-1]
|
||||||
|
stack = stack[:len(stack)-2]
|
||||||
|
switch token {
|
||||||
|
case "+":
|
||||||
|
stack = append(stack, num1+num2)
|
||||||
|
case "-":
|
||||||
|
stack = append(stack, num1-num2)
|
||||||
|
case "*":
|
||||||
|
stack = append(stack, num1*num2)
|
||||||
|
case "/":
|
||||||
|
stack = append(stack, num1/num2)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return stack[0]
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user