全部问题 > 当前问题

提问(^0^)/

我觉得给出前序列ABCDEFG就可以写出来一个数列了啊啊啊啊啊,为什么>o<每回都不对(~_~;),前序列和中序列感觉对不上(;`O´)o啊!


李鑫鹏 2016-3-13 15:19:29

共 1 个回答

青栀如初 2016-3-13 17:42:02

亲爱哒

   不好意思,刚刚才看到问题

   我们说:前序序列——根左右——A,B,C,D,E,F,G——我们可以推出二叉树的根为:A

                 中序序列——左根右——D,C,B,A,E,F,G——我们刚刚推出A为二叉树的根节点,再来看A左右的元素,我们会发现:B,C,D在A的左边,所以B,C,D为二叉树的左子树,E,F,G在A的右边,所以E,F,G为二叉树的右子树(C在B的左边,所以C是以B为节点的左子树,D在C的左边,所以D是以C为节点的左子树)。(F在E的右边,所以F是以E为节点的右子树,G在F的右边,所以G是以F为节点的右子树)

 所以图示为:                              A

                                        B                     E

                          C                                                F

           D                                                                              G

                                      

      所以我们说:后序序列——左右根——DCB   GFE   A

  所以我们选择:D选项就可以了

    亲爱哒“望采纳哟!”如果以后还有什么不懂哒问题我们还可以一起讨论哟,相信我们一定会把问题解决哒,么么哒亲爱哒!

问题来自: 二叉树的遍历
某二叉树的前序序列为ABCDEFG,中序序列为DCBAEFG,则该二叉树的后序序列为( )
A. EFGDCBA
B. DCBEFGA
C. BCDGFEA
D. DCBGFEA
答案:D
解析:前序序列是中左右,根结点为A;中序序列是左中右,左子树BCD,右子树EFG;遵循遍历序列的规则排列出二叉树,得出后序遍历为DCBGFEA。所以选择D。