波兰表达式(Polish Notation)简要介绍

波兰表达式的由来

1920年,波兰科学家扬·武卡谢维奇(Jan ukasiewicz)发明了一种不需要括号的计算表达式的表示法将操作符号写在操作数之前,也就是前缀表达式,即波兰式(Polish Notation, PN)

波兰表达式的用法

比如一个波兰式:+ 2 * 3 - 5 1 ,使用方法如下,先进行扫描,如果出现一个operator后面跟着俩operand的情况,那就用这个运算符对两个数字进行计算,并且把结果返回到原来的位置。如此重复。像这个栗子就是:

+ 2 * 3 - 5 1
+ 2 * 3 4
+ 2 12
14

实际上,这个是算式 2 + 3 * ( 5 - 1 ) 的波兰表达式。

波兰式与其他的表达式

一般我们人类使用的,比如2 + 3 * ( 5 - 1 ) 称为中缀表达式 ,需要用括号指明运算顺序;
上面的这种:+ 2 * 3 - 5 1 就是所谓的波兰式,或者叫前缀表达式 ,因为运算符在前面;
还有另一种,如:2 3 5 1 - * + 叫做逆波兰式(Reverse Polish Notation) ,也叫后缀表达式

中缀转换为后缀可以使用栈来操作,此处不详述。

2018年03月10日01:30:01

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值