一棵二叉树的前序遍历序列为ABCDEFG,它的中序遍历序列可能是( B )

A.CABDEFG B.ABCDEFG C.DACEFBG D.ADCFEG
能不能给我具体点讲一下

通过前序遍历,可以得到根是A。
看A答案,A的左边是C,所以A左子树只有C,因为中序是先左子树再根再右子树,但是前序B在C前面,所以该中序错误。
看B答案,该二叉树可以是
A
\
B
\
C
...
所有结点只有右子树,这样前序是ABCDEFG 和中序是ABCDEFG,存在这样的二叉树,满足答案。
看C答案,跟A的分析一样。
看D答案,没有B结点
温馨提示:答案为网友推荐,仅供参考
第1个回答  2018-04-05

通过前序遍历,可以得到根是A。

看A答案,A的左边是C,所以A左子树只有C,因为中序是先左子树再根再右子树,但是前序B在C前面,所以该中序错误。

看B答案,该二叉树可以是

A

\

B

\

C

...

所有结点只有右子树,这样前序是ABCDEFG 和中序是ABCDEFG,存在这样的二叉树,满足答案。

看C答案,跟A的分析一样。

看D答案,没有B结点谢谢图形不好画 A的左子树是C右子树是E C的左子树是B右子树是D E的右子树是F F的左子树是G 前序为ACBDEFG

本回答被网友采纳