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

题目:

题解:

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. 力扣经典150五十五波兰表达式

    2024-06-17 18:42:04       14 阅读
  2. 150. 波兰表达式

    2024-06-17 18:42:04       36 阅读
  3. Leetcode 150波兰表达式

    2024-06-17 18:42:04       9 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-06-17 18:42:04       16 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-06-17 18:42:04       16 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-06-17 18:42:04       15 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-06-17 18:42:04       18 阅读

热门阅读

  1. 敏捷测试:方法和实践

    2024-06-17 18:42:04       6 阅读
  2. Linux sudo -i取消密码的方法

    2024-06-17 18:42:04       7 阅读
  3. 怎样在C语⾔中制作动画?

    2024-06-17 18:42:04       6 阅读
  4. Go 基础丨切片 slice

    2024-06-17 18:42:04       8 阅读
  5. 超级异地组网工具有哪些?

    2024-06-17 18:42:04       8 阅读
  6. vlan、vxlan、vpc学习

    2024-06-17 18:42:04       6 阅读