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]
}
相关推荐
参.商.2 小时前
【Day41】143. 重排链表
leetcode·golang
Zaly.5 小时前
【Python刷题】LeetCode 1727 重新排列后的最大子矩阵
算法·leetcode·矩阵
捧 花5 小时前
最小生成树算法(Go)
golang·最小生成树·kruskal·prim
添尹6 小时前
Go语言基础之数组
后端·golang
liurunlin8887 小时前
Go环境搭建(vscode调试)
开发语言·vscode·golang
memcpy07 小时前
LeetCode 1456. 定长子串中元音的最大数目【定长滑窗模板题】中等
算法·leetcode·职场和发展
玛丽莲茼蒿8 小时前
LeetCode hot100【相交链表】【简单】
算法·leetcode·职场和发展
wen__xvn8 小时前
力扣模拟题刷题
算法·leetcode
不要秃头的小孩8 小时前
力扣刷题——111.二叉树的最小深度
数据结构·python·算法·leetcode
We་ct9 小时前
LeetCode 35. 搜索插入位置:二分查找的经典应用
前端·算法·leetcode·typescript·个人开发