您的位置:首页 > 其它

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

2015-06-11 20:17 267 查看
设置一个栈,开始时,栈为空,然后从左到右扫描后缀表达式,若遇操作数,则进栈;

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

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

例,求后缀表达式: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
扫描完毕,运算结束
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: