题目描述:给定两个整数数组 inorder 和 postorder ,其中 inorder 是二叉树的中序遍历, postorder 是同一棵树的后序遍历,请你构造并返回这颗 二叉树 。

示例 1:
输入:inorder = [9,3,15,20,7], postorder = [9,15,7,20,3]
输出:[3,9,20,null,null,15,7]示例 2:
输入:inorder = [-1], postorder = [-1]
输出:[-1]
/*** Definition for a binary tree node.* function TreeNode(val, left, right) {*     this.val = (val===undefined ? 0 : val)*     this.left = (left===undefined ? null : left)*     this.right = (right===undefined ? null : right)* }*/
/*** @param {number[]} inorder* @param {number[]} postorder* @return {TreeNode}*/
var buildTree = function (inorder, postorder) {let postIndex = postorder.length - 1;let map = new Map()inorder.forEach((item, idx) => {map.set(item, idx)})const help = function (start, end) {if (start > end) {return null}let root_val = postorder[postIndex];let root = new TreeNode(root_val)let index = map.get(root_val)postIndex -- ;root.right = help(index + 1, end)root.left = help(start, index - 1)return root}return help(0, postorder.length - 1)
};

leetcode系列-106. 从中序与后序遍历序列构造二叉树相关推荐

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

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

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

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

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

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

  4. 【必拿下系列】106. 从中序与后序遍历序列构造二叉树105从前序与中序遍历序列构造二叉树

    两题各自的链接放这里了: 链接: 106 链接: 105 106.从中序与后序遍历序列构造二叉树 如果你是不知道理论的,那就得仔细分析了, 举个例子: 输入:inorder = [9,3,15,20, ...

  5. Suzy找到实习了吗Day 18 | 二叉树进行中:513 找树左下角的值,112 路径总和 ,106.从中序与后序遍历序列构造二叉树

    513 找树左下角的值 solution # Definition for a binary tree node. # class TreeNode: # def __init__(self, val ...

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

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

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

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

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

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

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

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

  10. 代码随想录第18天|找树左下角的值,路径总和,从中序和后序遍历序列构造二叉树

    LeetCode513.找树左下角的值 题目链接:513. 找树左下角的值 - 力扣(LeetCode) 思路: 迭代法(只需要记录最后一行第一个节点的数值就可以了.): /*** Definitio ...

最新文章

  1. This和Super关键字的对比
  2. 解决Android 7.0 App内切换语言不生效的问题
  3. 计算机考试一年有肌肉,阅卷老师最想看到什么样的字体?电脑阅卷时代,这种字体很吃香...
  4. HDU2016数据交换
  5. windows执行python文件提示SyntaxError: Non-ASCII character ‘\xe9‘ in file 1.py on line 7, but no encoding d
  6. C++小项目-吃豆子游戏
  7. 第一章:Python的基本数据类型-第三节:Python中表示“无序”的数据类型
  8. 表关联使用INNER JOIN实现更新功能
  9. JavaScript笔记整理
  10. 最小生成树:Kruskal算法 和 Prim算法(第23章)
  11. 使软件可二次开发_九思软件:平台型OA系统为何要好于项目型OA系统?
  12. 班尼路信息化系统基础选型的简单分析
  13. 优先级反转之futex(一)
  14. 会计计算机学什么软件有哪些,会计一般要学什么软件
  15. 海康威视摄像机SDK二次开发-JavaDemo环境搭建详解
  16. 超微服务器查型号,超微 云服务器
  17. Qt学习总结之QTableWidget表格填充
  18. 开始topcoder
  19. python中dice常见问题_【Pytorch】 Dice系数与Dice Loss损失函数实现
  20. 涂鸦智能赴美上市:2年亏损1.4亿美元,腾讯、高瓴等参与认购

热门文章

  1. make makefile cmake qmake都是什么,有什么区别?
  2. c++11的函数返回值要不要std::move()
  3. IP地址【IP地址精品博文】
  4. 关于【batch】的一些问题
  5. ispring sdk 9.7转换文档,ispring sdk 9.7 Carck
  6. Docker 开启 buildx 多CPU架构镜像制作
  7. 自由开发者的收入来源(程序员)
  8. 51单片机K型热电偶温度采集及控制温控模块MAX6675热电偶LCD1602
  9. OCR快速入门(二)| Python版
  10. 黑马程序员C++ 案例四 机房预约系统