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

打开一张图片后点击跳转到网站怎么做的ps做网站

打开一张图片后点击跳转到网站怎么做的,ps做网站,青海省住房建设厅网站首页,天猫网站建设的目标是什么意思224. 基本计算器给你一个字符串表达式 s ,请你实现一个基本计算器来计算并返回它的值。注意:不允许使用任何将字符串作为数学表达式计算的内置函数,比如 eval() 。 示例 1:输入:s "1 1"输出:2示例 2&#…

224. 基本计算器

给你一个字符串表达式 s ,请你实现一个基本计算器来计算并返回它的值。

注意:不允许使用任何将字符串作为数学表达式计算的内置函数,比如 eval()

示例 1:

输入:s = "1 + 1"

输出:2

示例 2:

输入:s = " 2-1 + 2 "

输出:3

示例 3:

输入:s = "(1+(4+5+2)-3)+(6+8)"

输出:23

提示:

  • 1 <= s.length <= 3 * 105

  • s 由数字、'+'、'-'、'('、')'、和 ' ' 组成

  • s 表示一个有效的表达式

  • '+' 不能用作一元运算(例如, "+1" 和 "+(2 + 3)" 无效)

  • '-' 可以用作一元运算(即 "-1" 和 "-(2 + 3)" 是有效的)

  • 输入中不存在两个连续的操作符

  • 每个数字和运行的计算将适合于一个有符号的 32位 整数

如何实现一个计算器 :: labuladong的算法小抄 (gitee.io)

思路:栈

当i遇到运算符时,将前一个num和sign入栈,然后再更新sign为当前运算符,num为0。

这里还额外实现了'*'、'/',为了做到先乘除后加减:

'+'、'-' 运算符只能给栈内push值,而'*'、'/' 运算符可以从栈内pop出被乘数或被除数,再将乘除运算后的结果push入栈内。

class Solution {
public:int calculate(string s){int index=0;return deal(s,index);}int deal(string& s,int& i) //注意:传入i的引用{stack<int> st;int num=0;char sign='+';//记录num前的符号,默认为'+'for(;i<s.size();i++){char c=s[i];if(c=='(')//遇到左括号,开始递归,求(...)算出的值{num=deal(s,++i);//因为传入的是i的引用,所以递归调用结束后,i此时就是与该'('对应的')'的下标}if(isdigit(c)){num=num*10+(c-'0');}if((!isdigit(c)&&c!=' ')||i==s.size()-1)//遇到运算符或者来到字符串末尾,将前一个num和sign入栈(跳过' '){int temp=0;switch(sign)//前一个num的符号{case '+':st.push(num);break;case '-':st.push(-num);break;case '*':temp=st.top();st.pop();st.push(temp*num);break;case '/':temp=st.top();st.pop();st.push(temp/num);break;}sign=c;//更新当前num的符号num=0;//更新num的值}if(c==')')//遇到右括号,结束递归break;}int res=0;while(!st.empty())//栈内所有的元素之和即为表达式之值{res+=st.top();st.pop();}return res;}
};

http://www.yayakq.cn/news/243978/

相关文章:

  • wap网站设计方案专业网站建设公司排名
  • 上海公司详细地址怎么优化网站代码
  • 自己做网站需要什么网站建设原则
  • html成品网站重庆市建设工程信息网安全监督特种作业
  • 贵阳网站建设公司楚天网站建设合同
  • 杭州网站推广方案平台永康医院网站建设
  • 做网站的是什么职位企业建设网站有什么作用
  • 如何进行电子商务网站推广上海建设安全协会官网
  • 网站建设难度大吗菠萝菠萝蜜免费播放视频
  • 沈阳网站改版做电影资源网站违法吗
  • 网站的建设与预算一般的网站是由什么语言做的
  • app做好了网站怎么做南昌房产网信息网
  • 扎区门户网站建设深圳住建厅官方网站
  • 山东网站建设开发外包浏览器打开用dw做的网站说
  • 站酷网怎么样怎样自己做网站赚钱吗
  • 做早餐煲汤网站wordpress cdn 回源量
  • 如何更新网站快照手机开发者选项开启的好还是关闭的好
  • 自己建设一个网站软件怎么创作一个微信小程序
  • 网站维护常识搭建网站软件
  • 个人网站模板怎么做网站大量死链
  • 南山做网站的东莞市住房建设局网站首页
  • 郑州网站建设方案免费的外贸网站推广方法
  • 免费那个网站wordpress 怎么登录地址
  • 网站访问量怎么做厂字型布局网站
  • 网站建设哪些职位采招网招标官网
  • 中山网站seo公司宣传网站建站
  • seo网站关键词优化多少钱深圳专业网站建设
  • wordpress 如何建站凡科一个注册做2个网站
  • 学校网站建设多少钱海宏集团网站建设方案
  • 现在那个网站做视频最赚钱企业做网站的步骤与做网站注意事项