224. Basic Calculator,227. Basic Calculator II

实现一个计算器。
首先这是一个复杂问题,需要分成一系列的小问题来解决。在这里我们可以分成字符串转换成数字,如何处理空格,如何进行一个算式的运算,如何处理括号等。

  1. 字符串转换成数字
    从给定的字符串中一个一个读字符,将该字符和以前的字符进行运算得到数字。
  2. 如何处理空格
    直接忽略即可。
  3. 如何进行一个算式的运算
    比如1+3+4-3,可以看作四个有符号数进行相加。
    对于227题,添加两种情况即可。乘除法优先级高,将乘除号和两个运算数结合起来看作一个整体,比如2+3*5/2-》2+15/2-》2+7.5;最终还是转化成了有符号数运算。
  4. 如何处理括号
    括号里面的算式需要先进行运算,在把括号看成一个整体,与前面的算式进行运算,这里可以理解成递归。
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容