java 数据结构--中缀表达式

9 + (3 - 1) * 3 + 10 / 2

上面这个是我们平常用到的表达式,他的结构是数字在两边,运算符号在中间,我们看起来更加的舒服,但是在计算机来看就比较麻烦了

所以,计算机计算一般都是后缀表达式,所以上面的式子就变成了

9 3 1 - 3 * + 10 2 / +

后缀表达式求值

9 3 1 - 3 * + 10 2 / +
9 2 3 * + 10 2 / +
9 6 + 10 2 / +
15 10 2 / +
15 5 +
20

中缀表达式转为后缀表达式

中缀表达式转后缀表达式:数字输出,运算符进栈,括号匹配出栈,栈顶优先级高出栈

9 + (3 - 1) * 3 + 10 / 2 -> 9 3 1 - 3 * + 10 2 / +

你可能感兴趣的:(java)