LeetCode Evaluate Reverse Polish Notation

Evaluate the value of an arithmetic expression in Reverse Polish Notation.

Valid operators are +-*/. Each operand may be an integer or another expression.

Some examples:

这个叫什么来着,好熟悉,逆波兰表达式???这个题目当然是极其简单的

复制代码
 1 class Solution {
 2 public:
 3     int Opr(int x,int y,string opr){
 4         if(opr=="+"){
 5             return x+y;
 6         }
 7         if(opr=="-"){
 8             return x-y;
 9         }
10         if(opr=="/"){
11             return x/y;
12         }
13         if(opr=="*"){
14             return x*y;
15         }
16     }
17     int evalRPN(vector<string>& tokens) {
18         stack<int>Int;
19         int len=tokens.size();
20         for(int i=0;i<len;i++){
21             if(tokens[i]=="+"||tokens[i]=="-"||tokens[i]=="/"||tokens[i]=="*"){
22                 int x=Int.top();Int.pop();
23                 int y=Int.top();Int.pop();
24                 Int.push(Opr(y,x,tokens[i]));
25             }else{
26                 Int.push(atoi(tokens[i].c_str()));
27             }
28         }
29         return Int.top();
30     }
31 };
复制代码

 

posted @   樱花落舞  阅读(191)  评论(0编辑  收藏  举报
编辑推荐:
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
· 三行代码完成国际化适配,妙~啊~
历史上的今天:
2017-03-01 喵哈哈村的魔法考试 Round #3 (Div.2) ABCDE
2017-03-01 喵哈哈村的魔法考试 Round #1 (Div.2) ABCD
2016-03-01 排列组合
点击右上角即可分享
微信分享提示