已知先序中序或后序中序,画出二叉树并求其后序或先序遍历序列(数据结构)

假设一颗二叉树的先序序列为DBACEGF,中序序列为ABCDEFG,后序序列为ACBFGED,请画出该二叉树。
结果图

解题步骤:
1.前序中的第一个字母或后序中的最后一个字母为该二叉树的根结点,本题中为D
2.在中序序列中找到该字母,根节点即该字母的左侧对应二叉树的左子树,右侧对应右子树,本题中对应的左子树为CBA,右子树为EFG
3.在前序和后序里,每个子树中,根后的第一个元素作为新的根,本题中为B和E
4.重复2,本题中B的左子树为A,右子树为C;E的左子树为空,右子树为FG
5.重复3,本题中新的根为G
6.接着重复,直到画出所以结点,本题中G的左子树为F,本题结束。
ps:## 标题反推前序和后序序列也是这个思路,一点点往回捋就可以

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值