《大话数据结构》-根据遍历结果反推二叉树

了解二叉树几种遍历方法,可参考二叉树遍历根绝二叉树的遍历性质,可以得到两个性质:
1. 已知前序和中序遍历序列,可以唯一确定一棵二叉树
2. 已知后序和中序遍历序列,可以唯一确定一棵二叉树
3. 已知前序和后序遍历序列,无法确定一棵二叉树

例题1:已知一棵二叉树的前序遍历序列为ABCDEF,中序遍历序列为CBAEDF,请问这棵二叉树的后序遍历结果是多少?
分析: 首先确定根结点,再分别确定左子树和右子树的结点,很显然,根据前序的遍历结果,可知 A A A为根结点,再根据中序遍历结果可知,CB为左子树的结点,EDF为右子树的结点。
在这里插入图片描述
再分别分别左、右子树
左子树: 观察CB在前序中的位置,B在A之后,那么B为A的左孩子,接着判断C, 假设C是B的右孩子,那么在中序遍历中 ,B应该在C之前了,所以C是B的左孩子
右子树:在前序遍历中,D是第一个出现的,那么显然D是A的右孩子,根据中序遍历,E为D的左孩子,F为为D的右孩子
确定树的结构如下:
在这里插入图片描述
那么该二叉树的后序遍历序列为:CBEFDA

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值