问题:给定一个可能包含字母、数字(正负数)的中缀表达式,请将其转化为后缀表达式
· 核心思想:利用栈来实现该操作。
1.数据准备:
首先定义两个string类型的变量str和ans,分别用来存储所给的中缀表达式和最后要输出的后缀表达式。
定义一个栈stk,用来执行中缀变后缀的相关操作。
2.判定优先级:
在前缀转中缀的过程中,是通过计算各运算符的优先级来进行的,因此需要设计一个函数,用来判定某个运算符的优先级。
预设“+”和“-”的优先级为2,“*”和“/”的优先级为3,“^”的优先级为4,其余如括号等的优先级设定为1.
因此,传入所给的运算字符ch,通过该函数,可依据ch的类型返回其优先级。
3.算法思想:
①去除所给

文章介绍了如何使用栈来实现将包含字母、数字和运算符的中缀表达式转换为后缀表达式的过程,包括处理优先级、正负数判断和空格消除的方法,以及相应的C++代码示例。
最低0.47元/天 解锁文章
515

被折叠的 条评论
为什么被折叠?



