数据结构中根据根的次序访问序列求对应的树

在数据结构中,如何通过访问序列确定对应的树?例如已知树的先根次序访问序列为GFKDAIEBCHJ.后根次序访问序列为DIAEKFCJHBG,求对应的树。请问解决方法,而不是答案,谢谢
谢谢1L啊,回答得很具体。提问的时候忘悬赏了,补20分给你

第1个回答  2008-11-22
先根次序访问序列:根->[左(先根次序)]->[右(先根次序)]
后根次序访问序列:[左(后根次序)]->[右(后根次序)]->根
[]表示一个子树的访问序列

很容易找出根是'G',将'G'从序列中去掉

接下来就是将4个子树的访问序列分离出来(左子树先根序列、右子树先根序列、左子树后根序列、右子树后根序列)

容易看出左子树根为'F'(先根次序最左边),则根据左子树后根次序最后访问的是根'F',可以分离出左右子树后根序列:DIAEKF(左)和CJHB(右)

同样容易看出右子树根为'B'(后根次序最右左边),则根据右子树先根次序最先访问的是根'B',可以分离出左右子树先根序列:FKDAIE(左)和BCHJ(右)

将上面4个序列按左右分成两组,重复上面步骤。本回答被提问者采纳