LeetCode 227. 基本计算器 II
创始人
2025-01-07 01:33:14
0

更多题解尽在 https://sugar.matrixlab.dev/algorithm 每日更新。
组队打卡,更多解法等你一起来参与哦!

LeetCode 227. 基本计算器 II,难度中等

解题思路:创建一个栈用于保存操作数。遍历字符串,如果当前字符是“ ± 运算符”,则压入栈中;如果当前字符是“ */ 运算符”,则从栈中取数计算后重新压入栈中。最后将栈中的数据累加。

为什么运算符是后更新?
这是因为我们需要在处理当前数字和前一个运算符之后再更新运算符,以确保当前数字被正确处理。

class Solution {     public int calculate(String s) {         if (s.isEmpty()) return 0;         Stack stack = new Stack<>();         int result = 0;         // 当前数字         int num = 0;         char sign = '+';         for (int i = 0; i < s.length(); ++i) {             char c = s.charAt(i);             if (Character.isDigit(c)) {                 // 判断并计算出数字                 num = num * 10 + (c - '0');             }              if ((!Character.isDigit(c) && c != ' ') || i == s.length() - 1) {                 switch (sign) {                     case '+':                         // 将当前数字压入栈                         stack.push(num);                         break;                     case '-':                         // 将当前数字的相反数压入栈                         stack.push(-num);                         break;                     case '*':                         // 弹出栈顶元素,与当前数字相乘后压入栈                         stack.push(stack.pop() * num);                         break;                     case '/':                         // 弹出栈顶元素,与当前数字相除后压入栈                         stack.push(stack.pop() / num);                         break;                 }                 // 更新运算符                 sign = c;                 num = 0;             }         }          // 将栈内数据累加         for (int i : stack) {             result += i;         }         return result;     } } 

相关内容

热门资讯

最终!德普之星透视免费,微信小... 最终!德普之星透视免费,微信小程序雀神,好像真的是有挂(有挂攻略)1、下载好微信小程序雀神脚本下载之...
黑科技技巧!wepoker免费... 黑科技技巧!wepoker免费脚本,jj斗地主外开挂,都是是真的有挂(讲解有挂)1、每一步都需要思考...
突发!pokemomo辅助软件... 突发!pokemomo辅助软件,winner辅助软件,切实是真的有挂(有挂教程)1、实时winner...
更值得关注的是!wpk真吗,潮... 更值得关注的是!wpk真吗,潮友会鱼虾蟹塞子概率计算方式,原来真的有挂(有挂细节)一、潮友会鱼虾蟹塞...
突发!aapoker怎么选牌,... 突发!aapoker怎么选牌,雀友会广东潮汕辅助脚本,总是真的是有挂(真的有挂)该软件可以轻松地帮助...
截至目前!wpk软件是正规的吗... 截至目前!wpk软件是正规的吗,宝宝浙江游戏免费开挂,一直是真的有挂(有挂解密)宝宝浙江游戏免费开挂...
现有关情况通报如下!哈糖大菠萝... 现有关情况通报如下!哈糖大菠萝万能挂,蜀山四川麻亲友房祈福,果然存在有挂(发现有挂)1、游戏颠覆性的...
黑科技辅助挂!wepoker开... 黑科技辅助挂!wepoker开脚本视频,多乐小程序游戏破解器,确实确实有挂(证实有挂)黑科技辅助挂!...
2026版复盘!wepoker... 2026版复盘!wepoker俱乐部辅助,财神破解版全自动脚本,切实真的有挂(存在有挂)1、下载好财...
突发!we-poker辅助器,... 突发!we-poker辅助器,枫叶辅助器,一贯真的是有挂(揭秘有挂)枫叶辅助器透视方法中分为三种模型...