表达式 a*(b+c)-d 的后缀表达式?
来源:百度知道 编辑:UC知道 时间:2024/05/17 18:15:39
请一步一步的说!!!
表达式 a*(b+c)-d是中缀表达式,转化成二叉树后,它是中序遍历的结果
二叉树如下图:
______(-)_________
_____/___\________
____(*)__(d)______
____/__\__________
__(a)__(+)________
______/___\_______
____(b)___(c)_____
后缀表达式,就是后序遍历该二叉树,所得到的序列,也就是:abc+*d-
同样的道理,前缀表达式是前序遍历二叉树,所得到的序列,是:-*a+bcd
首先输出A(因为不是运算符),然后把*储存到栈中,然后遇到(,他比*的优先级高,所以压入栈,再输出B,然后遇到+,同样他比(的优先级高,继续压入栈,然后输出C,再遇到),他的优先级比+低,所以将+出栈,并输出+,然后再与(进行比较,两个优先级一样,将(直接出栈,再遇到-运算符,他的优先级比*低,所以将*出栈,并输出*,然后将-入栈,现遇到D,直接输出,然后将-输出,所以最后的结果就是ABC+*D-
表达式a*(b+C)-d的后缀表达式什么?
表达式 a*(b+c)-d 的后缀表达式?
已知a+b b+c c+d d+a求a (一个表达式)
假设A=true,B=false,C=true,D=true,逻辑运算表达式A∧B∨C∧D的值是( )。
假设A=true,B=false,C=ture,D=ture,逻辑运算表达式A∨B∧C∨D的值是( )。 A) ture B) false C) 0 D)1
设a=2, b=3, c=4, d=5, 下列表达式的值是:
设a=2 b=3c=4 d=5求下列表达式的值
a=5,b=4,c=3,d=2,下列表达式的值是( )。
、设a=1, b=2, c=3, d=4,则条件表达式a<b ? a : c<d ? c : d的值为( )。
如果int a=1,b=2,c=3,d=4;则条件表达式a<b?a:c<d?c:d的值为?