Golang | Leetcode Golang题解之第150题逆波兰表达式求值

题目:

题解:

Go 复制代码
func evalRPN(tokens []string) int {
    stack := make([]int, (len(tokens)+1)/2)
    index := -1
    for _, token := range tokens {
        val, err := strconv.Atoi(token)
        if err == nil {
            index++
            stack[index] = val
        } else {
            index--
            switch token {
            case "+":
                stack[index] += stack[index+1]
            case "-":
                stack[index] -= stack[index+1]
            case "*":
                stack[index] *= stack[index+1]
            default:
                stack[index] /= stack[index+1]
            }
        }
    }
    return stack[0]
}
相关推荐
水蓝烟雨1 小时前
1931. 用三种不同颜色为网格涂色
算法·leetcode
漂流瓶jz3 小时前
UVA-1152 和为0的4个值 题解答案代码 算法竞赛入门经典第二版
数据结构·算法·二分查找·题解·aoapc·算法竞赛入门经典·uva
leoufung3 小时前
LeetCode 76:Minimum Window Substring 题解与滑动窗口思维详解
算法·leetcode·职场和发展
风筝在晴天搁浅4 小时前
LeetCode 92.反转链表Ⅱ
算法·leetcode·链表
yeeanna7 小时前
GO函数的特殊性
开发语言·后端·golang
eLIN TECE7 小时前
Go基础之环境搭建
开发语言·后端·golang
念何架构之路7 小时前
Go反射应用技巧
开发语言·后端·golang
初心未改HD8 小时前
Go语言测试与Benchmark:测试驱动开发的实践指南
开发语言·golang
普贤莲花8 小时前
【2026年第18周---写于20260501】---舍得
程序人生·算法·leetcode
念何架构之路8 小时前
Go Web基础和Http演进
开发语言·后端·golang