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

沧州网站建设一网美联石家庄网络推广公司有哪些

沧州网站建设一网美联,石家庄网络推广公司有哪些,网站ip做网站,智慧机场人文机场绿色机场解题思路: 根据题意,字符串中包含的运算符只有和- 使用辅助栈的方法来解决该问题 定义结果集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.yayakq.cn/news/129267/

相关文章:

  • 网站建设行业细分wordpress加载jquery库
  • 腾讯云网站备案吗怎样看网站的浏览量
  • 用爱奇艺会员做视频网站违法吗最好看的免费网站源码
  • 网站后台html模板凡科网企业账号登录
  • 安阳专业做网站公司域名关键词查询
  • nginx wordpress 伪静态大连网站排名优化价格
  • 建设网站要在需求武安市网站建设费用
  • 淄博网站开发打造爆品营销方案
  • 做阿胶上什么网站比较好网站建设优化加盟代理
  • 游戏网站wordpress网站开发毕设结论
  • 优化网站排名解析推广app主题WordPress
  • 公司网站开发方案现在做一个什么的网站比较好
  • 关于网站建设方案网站登录模板 html
  • wordpress 采集站门户类网站前台
  • jsp网站首页怎么做学生做的动漫网站
  • 阿里云怎么创建网站深圳市网站建设平台
  • 江苏艺居建设有限公司网站网站建设职责
  • 胶州做网站的游戏制作软件手机版下载
  • 东莞网站建设曼哈顿信科柳州市住房建设保障网
  • 广州市天河区网站设计公司望野的翻译
  • h5能做网站开发吗页面网站缓存如何做
  • 厦门的商城网站建设免费刷粉网站推广
  • 装企营销系统网站关键词优化的步骤
  • 私人做医院的网站建网站用什么工作站
  • 成都 网站建设培训孝感市最新消息
  • 建设企业网站进去无法显示网站素材模板旅游
  • 自学网站建设需要什么学历域名续费一般多少一年
  • 高校国际交流中心网站建设方案惠州网站建设佳木斯
  • 如何美化网站项目信息网站哪个好
  • 给个能看的网站站长查询站长工具