编译原理:将a+d*(b-c) 写成逆波兰表达式

来源:互联网 发布:java中级工程师学校 编辑:程序博客网 时间:2024/05/27 12:20

逆波兰表达式示例

1. a+b  改为  ab+2. (a+b)*(c+d)  改为  ab+cd+*3. a+d*(b-c)  改为  adbc-*+

逆波兰表达式又叫做后缀表达式,顾名思义,如示例1,就是把运算符放在元素之后。

示例2:先算括号里的,就是a+b 和c+d,变为ab+和cd+,再把这两个式子看做两个元素,如x*y 变成xy*,

所以原式最终变为ab+cd+*

示例3

第一步: b-c  :  bc-第二步: d*(bc-) : dbc-*第三步: a+(dbc-*) :  adbc-*+
0 0