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

甘肃网站制作公司有哪些网络优化工具

甘肃网站制作公司有哪些,网络优化工具,国网商旅内网网址,百度免费建个人网站解题思路: 根据题意,字符串中包含的运算符只有和- 使用辅助栈的方法来解决该问题 定义结果集res和符号位sign(用于判断对下一数的加减操作),接着对字符串进行遍历。 如果当前字符为数字字符,判断当前字符的下一个字符是否也是数字字符&#x…

在这里插入图片描述
解题思路:

根据题意,字符串中包含的运算符只有+和-
使用辅助栈的方法来解决该问题
定义结果集res和符号位sign(用于判断对下一数的加减操作),接着对字符串进行遍历。
如果当前字符为数字字符,判断当前字符的下一个字符是否也是数字字符,如果下一个字符也是数字字符,需要将其和之后的数字字符都转换为int类型再进行合并,直至下一个字符不为数字字符为止。
如果当前字符为运算符,则更新符号位sign(加操作sign=1,减操作sign=-1)
如果当前字符为左括号,则将当前结果集推入栈中,并重置当前结果集为0,将当前符号位推入栈中,并重置当前符号位。这样做的目的是将(xxx)中的式子当成一个整体来计算。
如果当前字符为右括号,则将当前结果集与取出的第一个栈顶元素(符号位)相乘再与存入的结果集相加。
代码实现:

 public int calculate(String s) {Stack<Integer> stack=new Stack<>();int res=0;//结果int sign=1;//符号位,1代表正,-1代表为负int n=s.length();for(int i=0;i<n;i++){char c = s.charAt(i);if(Character.isDigit(c)){int cur=c-'0';while (i + 1 < n && Character.isDigit(s.charAt(i + 1))) {// i向后移动直到遇到非数字i++;// i每次向后移动一位当前值就要乘10cur = cur * 10 + s.charAt(i) - '0';}res=res+sign*cur;}//更新符号位else if(c=='+'){sign=1;}else if(c=='-'){sign=-1;}//括号的情况else if(c=='('){stack.push(res);res=0;stack.push(sign);sign=1;}else if(c==')'){res=res*stack.pop()+stack.pop();}}return res;}
http://www.hkea.cn/news/894601/

相关文章:

  • 余姚网站建设的公司手机百度账号申请注册
  • 预付网站制作费怎么做凭证如何自制网站
  • 定制网站多少钱北京seo网站管理
  • 南昌做网站公司哪家好如何建立独立网站
  • 成都解放号网站建设什么是百度竞价
  • 网站优化的基本思想与原则百度号码
  • 沧州网站建设制作设计优化深圳seo优化推广
  • 建立一个网站需要什么技术网上培训机构
  • 网站设计与管理论文百度账号注册平台
  • 网站空间商推荐seo是什么职位缩写
  • 怎么建设boss网站文件外链
  • 百度推广网站建设费百度搜索引擎的网址是多少
  • php 手机网站 上传图片定制网站建设
  • 关于网站建设的问题百度关键词分析
  • 登录官方网站装修公司网络推广方案
  • 设计网站官网入口网站搜索优化方法
  • 网站优化qq群山东做网站
  • wordpress icomoon太原seo快速排名
  • 中华建设杂志网站记者数据指数
  • 网站开发测试情况南召seo快速排名价格
  • 上海仓储公司小红书seo优化
  • 南京建设公司网站网络营销整合推广
  • wordpress更改语言沈阳seo优化
  • wordpress免费网站世界大学排名
  • 做网站的属于什么专业?百度爱采购竞价推广
  • 网站建设一年多少恰东莞网站到首页排名
  • 新企业网站应该怎么做SEO优化广告联盟有哪些
  • 手机app开发网站建设软文推广文章案例
  • 网站自然排名百度经验官网登录
  • dz网站模板沧州网站优化公司