算法通过村第6关【青铜】| 如何通过中序和后序遍历恢复二叉树

中序:3 4 8 6 7 5 2 1 10 9 11 15 13 14 12

后序:8 7 6 5 4 3 2 10 15 14 13 12 11 9 1

通过这两个遍历顺序恢复二叉树

首先我们知道中序遍历顺序左中右,后序遍历顺序左右中

第一步:

由后序遍历确定根结点为1 ==> 由中序遍历划分左右子树3 4 8 6 7 5 2 1 10 9 11 15 13 14 12

第二步:

继续找下层子树根结点: 8 7 6 5 4 3 2 10 15 14 13 12 11 9 1

左子树根结点为2,右子树根结点9,

划分中序:

3 4 8 6 7 5 2 ==> 3 4 8 6 7 5 2

10 9 11 15 13 14 12\] ==\> \[10\] 9 \[11 15 13 14 12

第三步:

继续找下层子树根结点: 8 7 6 5 4 3 2 10 15 14 13 12 11 9 1

左子树根结点为3,右子树根结点11,

划分中序:

3 4 8 6 7 5\] ==\> 3 \[ 4 8 6 7 5

11 15 13 14 12\] ==\> 11 \[15 13 14 12

依次类推最后得出图示:

相关推荐
threerocks11 小时前
Jev 入门第一课
算法
西柚研究生12345612 小时前
论文分析17:YOLOv11_UAVNet:无人机航拍图像专用目标检测算法
人工智能·python·深度学习·算法·目标检测
hetao173383712 小时前
2026-09-17 hetao1733837 的刷题记录
c++·算法
午彦琳13 小时前
2026.9.17
数据结构·算法·leetcode
木井巳13 小时前
【记忆化搜索】不同路径
java·算法·leetcode·深度优先·剪枝·推荐算法
怕浪猫15 小时前
从 Windows 换到 Mac 三个月,我真香了
算法·面试·架构
aichitang202415 小时前
前端小skill
前端·人工智能·算法·ai·前端框架
All for pursuit.16 小时前
【链表-9】146.LRU缓存
数据结构·c++·算法·leetcode
木子算法16 小时前
测出来的值会抖:约束和目标带噪声时,「可行」和「更好」该怎么判
人工智能·算法·目标跟踪
hanlin0318 小时前
刷题笔记:力扣第144题-二叉树的前序遍历
笔记·算法·leetcode