二叉树前序、中序、后序遍历求法

二叉树前序、中序、后序遍历相互求法

二叉树的三种遍历方法:

前序遍历:

1.访问根节点
2.前序遍历左子树
3.前序遍历右子树

中序遍历:

1.中序遍历左子树
2.访问根节点
3.中序遍历右子树

后序遍历:

1.后序遍历左子树
2.后序遍历右子树
3.访问根节点

三种方法的特点:

前序:开头是头结点,第一个节点肯定是根节点

中序:可以根据头结点划分左右子树的元素

后序:末尾是头结点,最后一个节点肯定是根节点

举例1,前中求后

前序遍历: GDAFEMHZ

中序遍历: ADEFGHMZ

求后序遍历。

前序可以得出 G为根节点。

带入中序中,ADEFG 为左边, HMZ为右边。

对应到两个子树的前序和中序。

左边前序:DAFE

左边中序:ADEF

右边前序:MHZ

右边中序:HMZ

推出:

左根节点D

右根节点M

以此类推,推导即可。

举例2,中后求前

中序遍历: ADEFGHMZ

后序遍历: AEFDHZMG

有后序,可以直接看出来G为根节点。

左边中序为ADEF

左边后序为AEFD

右边中序HMZ

右边后序HZM

推出左边根为D,右边根为M。

以此类推,推导即可。

举例3,前后求中

前序遍历: GDAFEMHZ

后序遍历: AEFDHZMG

可以得出根节点,但是无法确定左右子树,得到的解不唯一。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值