Leetcode 224. 基本计算器

文章目录

  • 题目
  • [代码(10.1 首刷看解析)](#代码(10.1 首刷看解析))

题目


Leetcode 224. 基本计算器

代码(10.1 首刷看解析)

cpp 复制代码
class Solution {
public:
    int calculate(string s) {
        stack<int> sk;  // 存储正负号
        sk.push(1);
        int sign = 1;
        int res = 0;
        int i = 0;
        while(i < s.size()) {
            if(s[i] == ' ') {
                i++;
            } else if(s[i] == '+') {
                sign = sk.top();
                i++;
            } else if(s[i] == '-') {
                sign = -sk.top();
                i++;
            } else if(s[i] == '(') {
                sk.push(sign);
                i++;
            } else if(s[i] == ')') {
                sk.pop();
                i++;
            } else {
                long long num = 0;
                while(i < s.size() && isdigit(s[i])) {
                    num = num*10+s[i]-'0';
                    i++;
                }
                res += num*sign;
            }
        }
        return res;
    }
};
相关推荐
全栈技术负责人11 小时前
DeepSeek Harness 业务工具权限插件 dsh-tool-permission设计思路
网络·算法·ai·ai编程
mmmmath_311 小时前
面试题 02.07. 链表相交
算法·链表
圣保罗的大教堂11 小时前
leetcode 3903. 最小稳定下标 I 简单
leetcode
residual_fan12 小时前
特征级SMOTE(Feature-level SMOTE)论文分享
人工智能·算法·数据挖掘·数据分析
xxwxx__12 小时前
深入理解 C++ STL:stack、queue 与 deque 从使用到底层实现全解析
开发语言·c++·算法
sylviiiiiia12 小时前
Leetcode hot100 多数元素/相交链表/反转链表
算法·leetcode·链表
CoderYanger12 小时前
A.每日一题:3622. 判断整除性
java·程序人生·算法·leetcode·面试·职场和发展·蓝桥杯
rannn_11112 小时前
【力扣hot100】动态规划专题|70、118、198、279、322、139、300、152、416、32
算法·leetcode·动态规划
渡之12 小时前
ArduPilot(APM)滤波器之 HarmonicNotchFilter 深度解析
算法·无人机