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

承德专业做网站的公司安徽网络营销推广

承德专业做网站的公司,安徽网络营销推广,网址转app制作生成器,郑州网站制作企业给你一个字符串表达式 s &#xff0c;请你实现一个基本计算器来计算并返回它的值。 注意:不允许使用任何将字符串作为数学表达式计算的内置函数&#xff0c;比如 eval() 。 1 < s.length < 3 * 105 s 由数字、‘’、‘-’、‘(’、‘)’、和 ’ ’ 组成 s 表示一个有效的…

给你一个字符串表达式 s ,请你实现一个基本计算器来计算并返回它的值。
注意:不允许使用任何将字符串作为数学表达式计算的内置函数,比如 eval() 。
1 <= s.length <= 3 * 105
s 由数字、‘+’、‘-’、‘(’、‘)’、和 ’ ’ 组成
s 表示一个有效的表达式
‘+’ 不能用作一元运算(例如, “+1” 和 “+(2 + 3)” 无效)
‘-’ 可以用作一元运算(即 “-1” 和 “-(2 + 3)” 是有效的)
输入中不存在两个连续的操作符
每个数字和运行的计算将适合于一个有符号的 32位 整数

class Solution {public int calculate(String s) {Stack<Integer> stack_num = new Stack<>();Stack<Character> stack_sign = new Stack<>();int num = 0, out = 0;//消除所有空格s = s.replaceAll(" ","");//反正第一个是负数stack_num.push(0);for(int i = 0; i < s.length(); i++){//先考虑整数if(s.charAt(i) >= '0' && s.charAt(i) <= '9') {num = 0;while(i < s.length() && s.charAt(i) >= '0' && s.charAt(i) <= '9'){num = num * 10 + s.charAt(i) - '0';i++;}i--;stack_num.push(num);//再考虑符号}else{//如果是右括号,则一直运算到左括号if(s.charAt(i) == ')'){while(stack_sign.peek() != '('){int y = stack_num.pop();int x = stack_num.pop();if(stack_sign.pop() == '-'){stack_num.push(x-y);}else{stack_num.push(x+y);}}stack_sign.pop();}//如果是左括号则直接进符号栈else if(s.charAt(i) == '(')stack_sign.push('(');else{//特殊情况就是左括号后第一个字符是正负号if(i > 0 && s.charAt(i-1) == '(')stack_num.push(0);//剩下的就是加减法符号,再进栈之前要先把之前可以进行加减运算的进行计算while(!stack_sign.isEmpty() && stack_sign.peek() != '(' && stack_num.size() >= 2){int y = stack_num.pop();int x = stack_num.pop();if(stack_sign.pop() == '-'){stack_num.push(x-y);}else{stack_num.push(x+y);}}stack_sign.push(s.charAt(i));}}}while(!stack_sign.isEmpty()){int y = stack_num.pop();int x = stack_num.pop();if(stack_sign.pop() == '-'){stack_num.push(x-y);}else{stack_num.push(x+y);}}return stack_num.pop();}
}
http://www.yayakq.cn/news/787158/

相关文章:

  • 网站开发交接清单做外贸雨伞到什么网站
  • 应用商店app下载龙口seo
  • 网站体验分享wordpress flatsome
  • jsp网站建设 书籍网站空间付款方式
  • 自己编程怎么做网站教程简单页面设计
  • 建设工程个人信息采集哪个网站西安建设网站的公司哪家好
  • 网站制作都有哪些网站开发的可行性报告
  • 南头专业英文网站建设公司企业网站代建设
  • 潍坊模板建站平台深圳市绿色建筑信息平台
  • 做物流的网站都有什么山西谷歌seo
  • 建设银行安全网站湖南企业网站建设制作
  • 漂亮的数据型网站百度热榜实时热点
  • asp开发网站详细步骤汽车技术资料网站建设
  • 如何做地方网站推广友链交换
  • 怎么用自己的网站做邮箱c 网站开发技术
  • 游戏网站建设论文翠竹林wordpress主题
  • 宁津县建设局网站网站建设策划书ppt
  • 运营和营销哪个更好模板网站seo
  • 常州网站制作报价asp网站整站下载器
  • 西乡建网站印刷东莞网站建设技术支持
  • 响应式网站建设多少钱公司推广是做什么的
  • 杭州网站排名服务中国外贸网站排名
  • 佛山 两学一做 网站wordpress 平衡插件
  • 网站可以几个服务器厦门网站建设哪家厦门建设银行
  • wordpress简体转繁体seo综合查询平台官网
  • 安顺市哪里可以做网站wordpress需要配置文件
  • 网站需求方案怎么开发一个自己的网站
  • 教育网站开发背景海南app开发
  • 企业网站制作素材免费seo优化
  • 公司网站域名如何建立将网站打造成