android逆波兰表达式的应用(三) 逆波兰表达式的实现 ----- 小达

 逆波兰表达式的实现


       ╮(╯▽╰)╭,刚刚宿舍又熄灯了,今天又犯懒了,本来是想偷懒的,想想还是坚持下吧,又不是什么坏事情,,,摸着瞎瞎来写博客咯~~~,今天就开始结合着代码再将逆波兰表达式的转化问题复习一遍,之前的转化规则再抓过来看看,



<span style="font-size:14px;">1. 正式的开始转化,首先第一个规则就是,遇到数字直接加入到后缀表达式中。(比如第一个数字 9 直接写出)

          2. 第二个规则是碰到运算符,需要做不同的处理。
                           ① 若当前符号堆栈为空,则直接入栈。

                           ② 若是 ‘(’ 就直接将其压入栈中,不管符号堆栈是否为空,也是直接入栈。

                           ③ 若当前符号栈中已经有元素了,则弹出栈顶符号,和遇到的那个符号比较运算优先级(不算括号)。

                                       Ⅰ.弹出的运算符优先级大,则将弹出的运算符写入后缀表达式,再重复步骤③
                                       Ⅱ.弹出的运算符优先级小或者等于,则将弹出的运算符压入栈中,再将遇到的运算符也压入栈中。
                                       Ⅲ.弹出的运算符为‘ ( ’,则先压入 ‘(’,再压入遇到的那个符号
 
                           ④ 若碰到了‘ )’,则不停的从符号栈中弹出运算符至后缀表达式中,直到遇到第一个与之匹配的‘(’为止。这个过                                   程将中缀表达式中的括号直接去除,这也是后缀表达式的优势。</span>

     
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值