摘要: 大家看到,后缀表达式适合计算机进行计算,但是人却不太容易写出来,尤其是表达式很长的情况下,因此在开发中,我们需要将 中缀表达式转成后缀表达式。 具体步骤如下: 1) 初始化两个栈:运算符栈s1和储存中间结果的栈s2; 2) 从左至右扫描中缀表达式; 3) 遇到操作数时,将其压s2; 4) 遇到运算符 阅读全文
posted @ 2020-02-26 23:08 指尖上的生产者 阅读(1552) 评论(0) 推荐(1) 编辑
摘要: 输入一个逆波兰表达式(后缀表达式) 例如:(3+4)*5-6对应的后缀表达式就是3 4 + 5 * 6 -, 针对后缀表达式求值步骤如下: a. 从左到右扫描,将3 和 4压入堆栈; b. 遇到+运算符,因此弹出4和3(4为栈顶元素,3为次顶元素),计算出3+4的值,得7,再将7入栈; c. 将5入 阅读全文
posted @ 2020-02-26 22:54 指尖上的生产者 阅读(259) 评论(0) 推荐(0) 编辑
摘要: 使用栈实现综合计算器 请输入一个表达式 例:[3+2*6-2] ,直接点击计算,就可以计算出值。 思路分析(图解) 代码如下 【1.先实现一位数的运算,2.扩展到多位数的运算】 1 package com.jyj.stack; 2 3 public class Calculator { 4 publ 阅读全文
posted @ 2020-02-26 21:59 指尖上的生产者 阅读(317) 评论(0) 推荐(0) 编辑