后缀表达式求值的步骤描述

设置一个栈,开始时,栈为空,然后从左到右扫描后缀表达式,若遇操作数,则进栈;

若遇运算符,则从栈中退出两个元素,先退出的放到运算符的右边,后退出的放到运算符左边,

运算后的结果再进栈,直到后缀表达式扫描完毕。此时,栈中仅有一个元素,即为运算的结果。

例,求后缀表达式:1 2 + 8 2 - 7 4 - / *的值,
栈的变化情如下:

步骤

栈中元素

说明

1

1

1进栈

2

12

2进栈

3

 

遇+号退栈2和1

4

3

1+2=3的结果3进栈

5

38

8进栈

6

382

2进栈

7

3

遇-号退栈2和8

8

36

8-2=6的结果6进栈

9

367

7进栈

10

3674

4进栈

11

36

遇-号退栈4和7

12

36

7-4=3的结果3进栈

13

3

遇/号退栈3和6

14

32

6/3=2的结果2进栈

15

 

遇*号退栈2和3

16

6

3*2=6进栈

17

6

扫描完毕,运算结束

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值