题目:有前序遍历ABCEDFG,中序ECBDFAG,请画出可能的二叉树并其后序遍历是?

分析如下:
使用中序遍历进行主体分析,前序遍历进行对照分析;
前序遍历中根节点是A,然后看中序,那就是ECBDF在左子树,G在右子树,由于左子树和右子树分析方法一致,所以只分析左子树;
先看左子树ECBDF,从前序遍历可知根节点是B,那么EC在B的左子树,DF在B的右子树;
先看左子树EC,从前序遍历可知根节点是C,由于左子树是EC,所以E在C的左子树;
在看右子树DF,从前序遍历可知根节点是D,由于右子树是DF,所以F在D的右子树上;
所以二叉树如下图:
在这里插入图片描述
根据二叉树可知:后序遍历是:ECFDBGA

延伸:

在来一题,题目是:若已知一棵二叉树的前序遍历是BEFCGDH,中序遍历是FEBGCHD,则它的后序遍历必是?
分析如下:
使用中序遍历进行主体分析,前序遍历进行对照分析;
前序遍历中根节点是B,然后看中序,那就是FC在左子树,GCHD在右子树,由于左子树和右子树分析方法一致,本次右子树比较复杂,所以只分析右子树;
先看右子树GCHD,从前序遍历可知根节点是C,那么G在B的左子树,HD在C的右子树;
先看右子树HD,从前序遍历可知根节点是D,由于中序遍历是HD,所以H在D的左子树上;
所以二叉树如下图:
在这里插入图片描述

根据二叉树可知:后序遍历是:FEGHDCB

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值