问题描述
- 数据结构_考试题_求大神帮助
-
表达式axb+(c-d/e)xf的前缀表达式为什么啊!大神知道的,帮助一下,万分火急啊
解决方案
有点不记得了,是不是+×ab×-c/def ,你可以参考下其他人的答案。
解决方案二:
+*ab*-c/def
解决方案三:
前缀表达式最简单了,相当于改写成函数形式,脱掉括号
比如
a+b
前缀就是add(a, b),对吧,我们把add写作+,脱掉括号就是+ab
再比如
a+b*c
就是
add(a, mul(b, c))
那么就是
+a*bc
解决方案四:
这个我可以再多说几句,关键不是知道一个答案,而是要清楚怎么做。
我们假设有这样四个函数:
double add(double a, double b)
{
return a + b;
}
double sub(double a, double b)
{
return a - b;
}
double mul(double a, double b)
{
return a * b;
}
double div(double a, double b)
{
return a / b;
}
那么我们是不是可以把任何四则运算表达式都改写成只调用这四个函数,而不出现运算符的形式?
比如你的题目,a*b+(c-d/e)*f
我们是不是可以这么写?
add(mul(a, b), mul(sub(c, div(d, e)), f))
那么我们把add mul sub div用+ * - /替换,把所有的括号和逗号全部去掉,是不是得到
+*ab*-c/def
这就是结果。明白了么?
解决方案五:
(3 + 4) × 5 - 6 就是中缀表达式
- × + 3 4 5 6?前缀表达式
3 4 + 5 × 6 -?后缀表达式
你按这个来自己改一下。
解决方案六:
你按这个来自己改一下。
(3 + 4) × 5 - 6 就是中缀表达式
- × + 3 4 5 6?前缀表达式
3 4 + 5 × 6 -?后缀表达式
解决方案七:
axb+(c-d/e)xf
前缀表达式为:
+xabx-c/def
解决方案八:
+xabx-c/def
时间: 2024-09-30 09:51:12