一颗二叉树节点的前序序列是ABDEGCFHI,中序序列为DBGEACHFI,则该二叉树节点的后序序列是什么?求求解图!

有图会理解的更好,谢谢!
2025-03-05 09:52:05
推荐回答(2个)
回答1:

根据相关概念,前序遍历的第一个结点一定是根结点(类似问题如果给出的是后序则最后一个一定是根结点)。于是可以据此将中序序列由根划分出左右子树来。如是递归下去,最后总能构造出完整的树来,并写出所求的后序序列。
以你给的问题为例:整棵树的根结点为前序的第一个点即A,于是根据中序可知左子树含结点DBGE、右子树含结点CHFI。分别递归分析左子树和右子树:左子树的根为前序中“BDEG”段内的第一个结点即B,右子树根为C…………类似一直进行到最小情况为止,树就可以构造出来了。
建议做完问题后可以在计算机上写个递归程序(以前序 中序为输入,后序为输出)加深一下对这种问题的理解。

回答2:

根据中序,前序可分拆为:A{BDEG}{CFHI}
A
{BDEG} = {B[D][EG]} = {B[D][E(G)]}
{CFHI} = {C[FHI]} = {C[F(H)(I)]}

因此,后序是:DGEBHIFCA