不同二叉树的中序遍历序列




由遍历序列构造二叉树

前序+中序遍历序列

由二叉树的先序序列和中序序列可以唯一地确定一棵二叉树。

在先序遍历序列中,第一个结点一定是二叉树的根结点;而在中序遍历中,根结点必然将中序序列分割成两个子序列,前一个子序列是根结点的左子树的中序序列,后一个子序列是根结点的右子树的中序序列。

根据这两个子序列,在先序序列中找到对应的左子序列和右子序列。在先序序列中,左子序列的第一个结点是左子序列的根结点,右子序列的第一个结点是右子树的根结点。

如此递归地进行下去,便能唯一地确定这棵二叉树。

例1:前序+中序遍历序列





例2:前序+中序遍历序列







后序+中序遍历序列

同理,由二叉树的后序序列和中序序列也可以唯一地确定一棵二叉树,因为后序序列的最后一个结点就如同先序序列的第一个结点,可以将中序序列分割成两个子序列,然后采用类似的方法递归地进行划分,进而得到一棵二叉树。

例3:后序+中序遍历序列







层序+中序遍历序列

由二叉树的层序序列和中序序列也可以唯一地确定一棵二叉树,若只知道二叉树的先序序列和后序序列,则无法唯一确定一棵二叉树。

例4:层序+中序遍历序列




例5:层序+中序遍历序列






由遍历序列构造二叉树相关推荐

  1. 【LeetCode系列】从中序与后序遍历序列构造二叉树 从前序与中序遍历序列构造二叉树...

    关注上方"深度学习技术前沿",选择"星标公众号", 资源干货,第一时间送达! 105. 从前序与中序遍历序列构造二叉树 根据一棵树的前序遍历与中序遍历构造二叉树 ...

  2. 数组反向遍历ios_LeetCode106.从中序与后序遍历序列构造二叉树(Construct Binary Tree from Inor...)...

    106. 从中序与后序遍历序列构造二叉树 根据一棵树的中序遍历与后序遍历构造二叉树. 注意: 你可以假设树中没有重复的元素. 例如,给出 中序遍历 inorder = [9,3,15,20,7]后序遍 ...

  3. 树与二叉树 | 实验3:由遍历序列构造二叉树

    实验3:由遍历序列构造二叉树 二叉树构造定理: 定理7.1:任何n(n>0)个不同结点的二又树,都可由它的中序序列和先序序列唯一地确定. 定理7.2:任何n(n>0)个不同结点的二又树,都 ...

  4. leetcode 106. 从中序与后序遍历序列构造二叉树 c语言递归解法

    如题: 根据一棵树的中序遍历与后序遍历构造二叉树. 注意: 你可以假设树中没有重复的元素.例如,给出 中序遍历 inorder = [9,3,15,20,7] 后序遍历 postorder = [9, ...

  5. 105从前序与中序遍历序列构造二叉树 106 从中序与后序遍历序列构造二叉树 (递归 + 哈希)

    引言 这两道题主要是考察二叉树遍历的掌握,即由前序和中序推出原二叉树,由后序和中序推出原二叉树,这里先来说一下推导过程: 前序和中序 知道前序遍历和中序遍历,如何推原二叉树?(直接是结论,可以自行推导 ...

  6. [Leetcode][第106题][JAVA][ 从中序与后序遍历序列构造二叉树][分治][递归]

    [问题描述][中等] [解答思路] public class Solution {public TreeNode buildTree(int[] inorder, int[] postorder) { ...

  7. [Leedcode][JAVA][第105题][从前序与中序遍历序列构造二叉树][栈][递归][二叉树]

    [问题描述][中等] 根据一棵树的前序遍历与中序遍历构造二叉树.注意: 你可以假设树中没有重复的元素.例如,给出前序遍历 preorder = [3,9,20,15,7] 中序遍历 inorder = ...

  8. [leetcode]从中序与后序/前序遍历序列构造二叉树

    从中序与后序遍历序列构造二叉树 根据一棵树的中序遍历与后序遍历构造二叉树. 注意: 你可以假设树中没有重复的元素. 例如,给出 中序遍历 inorder = [9,3,15,20,7] 后序遍历 po ...

  9. 二叉树 中序遍历 python_LeetCode 105 树 从前序与中序遍历序列构造二叉树(Medium)

    17(105) 从前序与中序遍历序列构造二叉树(Medium) 描述 根据一棵树的前序遍历与中序遍历构造二叉树. 注意: 你可以假设树中没有重复的元素. 示例 例如,给出前序遍历 preorder = ...

  10. java用中根后根序列构造二叉树,106. 从中序与后序遍历序列构造二叉树

    题目描述 根据一棵树的中序遍历与后序遍历构造二叉树. 注意: 你可以假设树中没有重复的元素. 示例: 例如,给出 中序遍历 inorder = [9,3,15,20,7] 后序遍历 postorder ...

最新文章

  1. 数据模拟工具wgsim
  2. 孩子斗图老失败,多半是没看这篇博客
  3. jquery 封装页面之间获取值
  4. 浮点数存储格式学习:找到非规格数中最大和最小的数
  5. Android API Guides 安卓API指导----第一部分:Introduction(介绍)
  6. flv播放器以及调用代码
  7. php把1拆分成三份,【php】位运算如何拆分
  8. Ubuntu / Debian / Deepin等 Sublime Text 3 配置C++环境(一键编译运行,格式化代码)
  9. STL 源代码分析 算法 stl_algo.h -- includes
  10. 数据库的事务隔离级别
  11. 18.XML CDATA
  12. 数值分析(7)-正交多项式
  13. 查看linux jvm使用情况,查看jvm内存使用命令
  14. 视频教程-华为HCNP/HCIP路由交换高级网络工程师-华为认证
  15. 笔记本cpu型号怎么看?笔记本处理器型号的类型与查看方法
  16. 多日之苦终得救:“威金”专杀工具发布(转)
  17. 德鲁克谈《自我管理》笔记摘要
  18. 引用论坛、社区、问答系统的区别
  19. 货拉拉2021岗位招聘内推计划开始啦
  20. tp打印服务器修改ip,tp打印服务器和网络打印机安装方法.docx

热门文章

  1. zblock 结构_偷窥Data block 的物理结构
  2. vb.net编写函数应该在哪里_编写代码时清晰至上
  3. lombok构造方法_最佳实践Lombok
  4. python销毁线程_聊聊 Python 中的线程
  5. poj 1129 也算是遍历的吧 两种方法
  6. mybatis_05动态SQL_if和where
  7. 18、OpenCV Python 简单实现一个图片生成(类似抖音生成字母人像)
  8. 卸载驱动出现:rmmod: can't change directory to '/lib/modules': No such file or directory
  9. 对象内存布局 (15)
  10. Phpcms V9全站伪静态设置方法