前、中、后缀表达式
前缀表达式:
+ 3 * 2 + 5 12
这个式子=23
具体计算方法是:
设两个栈,分别为数字栈和符号栈
每遇到一个符号,将其压栈,遇到一个数字,也压栈
如果发现数字栈中有数字,所以将数字栈首弹出,字符栈首弹出,和新的数运算
运算结果压入数字栈
上面表达式为:2*3+5+12
中缀表达式:
和平时一样,详情见小学三年级课本。
后缀表达式:
和前缀表达式差不多,只不过变成从后往前扫。
这是一颗二叉树,嗯
前缀表达式、中缀表达式、后缀表达式就是这颗二叉树的先序遍历、中序遍历、后序遍历。
神奇吧