1、可以从树的遍历结构来理解前中后缀表达式,中缀表达式对应树的中序遍历,前缀表达式对应树的前序遍历,后缀表达式对应树的后序遍历。
2、中缀-->后缀:从前到后遍历中缀表达式,分别存入dat栈、op栈(>);再将op栈存入dat栈,此时dat栈从栈底到栈顶输出即后缀表达式;后缀表达式读取顺序是从前往后的。新建栈num用来存数据,将后缀表达式按读取顺序依依入栈num,遇到操作符,做如下处理:以次栈顶 操作符 栈顶的顺序计算新的值,并且入栈num;
3、中缀-->前缀:从后往前遍历中缀表达式,分别存入dat栈、op栈(>=);再将op栈存入dat栈,此时dat栈从栈顶到栈底输出就是前缀表达式;前缀表达式读取顺序是从后往前的。新建栈num用来存数据,将前缀表达式按读取顺序依依入栈num,遇到操作符,做如下处理:以栈顶 操作符 次栈顶的顺序计算新的值,并且入栈num;