问题 单项选择题

有算术表达式((a+b)-c/(d+e)+f)*(g+h),其前缀和后缀表达式分别为()。

A.*+-+ab/c+def+gh、ab+cde+/-f+gh+*

B.*+-ab+/c+def+gh、ab+cde+/-f+gh+*

C.*+-+ab/c+def+gh、ab+cde+/-+fgh+*

D.*+-+ab/c+edf+gh、a+bcde+/-f+gh+*

答案

参考答案:A

解析:

表达式((a+ b)-c/(d+ e)+f)*(g+ h)对应的二叉树如图13-27所示。

对这棵二叉树的前序遍历和后序遍历对应表达式的前缀和后缀形式。此树的前序遍历为*+-+ab/c+def+gh,后序遍历为ab+cde+/-f+gh+*,于是选A。

单项选择题
填空题