Merge pull request #130 from QuinnDK/添加0150逆波兰表达式求值Go版本

添加0150逆波兰表达式求值Go版本
This commit is contained in:
Carl Sun
2021-05-15 17:30:47 +08:00
committed by GitHub

View File

@ -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]
}
```