[算法学习no6]二叉树序列

这篇博客探讨了如何利用递归分治策略,通过先序、中序和后序遍历来重建二叉树。详细阐述了中序+后序重建树的过程,以及中序+前序得到后序的方法。核心在于理解每个遍历序列中根节点的位置和子树的划分,从而实现树结构的重构。
摘要由CSDN通过智能技术生成

先序:根左右
中序:左根右
后序:左右根
中序+后序:前序
思路:递归分治
1.后序最后找到根节点
2.打印根节点
3.中序找到根节点,左右分开,分别为左子树和右子树
4.在后序中找到左子树,打印这个序列的最后一个点(也就是左子树根节点)
5.继续在中序中找到左子树的根节点,把左子树再分成左右两个子树
6.这样递归下去就可以了。
中序+前序:后序
1.前序找到根节点
2.中序中找到根节点,分成左右子树
2.递归左子树
2.1在前序中找到根节点
2.2中序中找到根节点,分成左右树
2.3递归左子树
2.4递归右子树
2.5打印根
3.递归右子树
4.打印根
结束。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值