![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
only java
文章平均质量分 80
草帽当家的
这个作者很懒,什么都没留下…
展开
-
栈的简单应用——四则运算(一)
在Java中用堆栈实现四则运算是一种很巧妙的方法。栈的先进后出原理可以很方便地判断并控制加、减、乘、除的优先级,利用这一优势,我们可以很高效的将一个中缀表达式转换为去除符号优先级的后缀表达式。一、基础知识中缀表达式 数学上的四则运算算术式,比如:2+3*4后缀表达式 不考虑符号优先级的表达式,比如:(2+3*4)经过转换之后的结果原创 2013-01-08 09:36:13 · 2897 阅读 · 2 评论 -
栈的简单应用——四则运算(二)
待解决问题 解决任意整数或小数的加减乘除四则运算。解决方法 在后缀表达式中把整数或小数放到圆括号里,将它们作为一个整体来处理,例如,"2+50"会转换为"2(50)+","2.1+1.2"会被转换为"(2.1)(1.2)+"。 程序只需在读到的元素为数字时,继续读取下一个元素,下一个元素为数字或小数点则将它与之前的数字拼接到一起,最后当遇到操作符原创 2013-02-02 15:32:23 · 603 阅读 · 0 评论 -
栈的简单应用——四则运算(三)
待解决问题 如何计算带括号的四则运算?解决方案 一、采用符号入栈的解决方式,只是圆括号的操作方式会有所改变。圆括号的优先级最高,"("入栈后,只有遇到")"后才会出栈,并且要先弹出"("后的遗留操作符,保证"( )"中的表达式先被执行。"( )"中的加减乘除操作保持正常的栈处理方式。 二、采用lisp解决问题的思路。所有的"( )"内的操作都是一样的原创 2013-02-02 20:26:33 · 592 阅读 · 0 评论