当前位置: 首页 > news >正文

基本计算器 II

题目:
在这里插入图片描述
思考:

  1. 需要对数字和符号分开处理
  2. 需要对多位数字字符合并成一个整数
  3. 涉及计算,采用栈存储
  4. 对于符号,向后看齐

实现:

class Solution {
public:int calculate(string s) {int ret=0;int t=0;stack<int> stk_num;char op='+';for (int i=0;i<s.size();i++){if (isdigit(s[i])){t=t*10+(s[i]-'0');}if (!isdigit(s[i])&&s[i]!=' '||i==s.size()-1){int num;switch(op){case '+':stk_num.push(t);break;case '-':stk_num.push(-t);break;case '*':num =stk_num.top();stk_num.pop();num*=t;stk_num.push(num);break;case '/':num=stk_num.top();stk_num.pop();num/=t;stk_num.push(num);break;}op=s[i];t=0;}}while(!stk_num.empty()){ret+=stk_num.top();stk_num.pop();}return ret;}
};
http://www.dtcms.com/a/329642.html

相关文章:

  • 回归分析预测原神深渊血量
  • 【金仓数据库产品体验官】_从实践看金仓数据库与 MySQL 的兼容性
  • Windows系统设置内外网同时访问(小白友好版)
  • Docker部署 Neo4j 及集成 APOC 插件:安装与配置完整指南(docker-compose)
  • 【Android】RecyclerView多布局展示案例
  • Kubernetes(K8S)中,kubectl describe node与kubectl top pod命令显示POD资源的核心区别
  • C语言:队列的实现和剖析
  • Spring Boot 整合 Thymeleaf 模板引擎:从零开始的完整指南
  • 攒钱学概论:5、创业术
  • Gemma 3 报告中的蒸馏
  • PHP imagick扩展安装以及应用
  • 16_基于深度学习的道路缺陷检测识别系统(yolo11、yolov8、yolov5+UI界面+Python项目源码+模型+标注好的数据集)
  • 自动驾驶轨迹规划算法——Apollo EM Planner
  • 从0开始配置conda环境并在PyCharm中使用
  • 8.13打卡 DAY 41 简单CNN
  • 对比学习中核心损失函数的发展脉络
  • 内存泄漏系列专题分析之三十三:cameraserver ION骤降成-1导致内存占用超标
  • 《Power Voronoi图的数学原理》
  • Nginx学习笔记(六)—— Nginx反向代理
  • CSS保持元素宽高比,固定元素宽高比
  • Socket 套接字的学习--UDP
  • 设计秒杀系统从哪些方面考虑
  • 服务器安全检测和防御技术
  • 符合实时AUTOSAR OS的形式化设计和验证方法
  • WPF的c1FlexGrid的动态列隐藏和动态列名设置
  • AI企业培训系统构建指南
  • 在 Conda 环境下编译 C++ 程序时报错:version `GLIBCXX_3.4.30‘ not found
  • 数据结构:队列(Queue)与循环队列(Circular Queue)
  • setsockopt函数详解
  • 海洋通信系统技术文档(1)