当前位置: 首页 > news >正文

day47(12.28)——leetcode面试经典150

106. 从中序与后序遍历序列构造二叉树

106. 从中序与后序遍历序列构造二叉树

我感觉我的数据结构都要忘光光了

题目:

题解:

/** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; * TreeNode right; * TreeNode() {} * TreeNode(int val) { this.val = val; } * TreeNode(int val, TreeNode left, TreeNode right) { * this.val = val; * this.left = left; * this.right = right; * } * } */ class Solution { public Map<Integer,Integer> map = new HashMap<>(); public int[] postorder; public TreeNode buildTree(int[] inorder, int[] postorder) { for(int i=0;i<inorder.length;i++) { map.put(inorder[i], i); } this.postorder = postorder; return recur(0,inorder.length-1,0,postorder.length-1); } public TreeNode recur(int left, int right, int l,int r) { if(left > right || l > r) { return null; } int root = postorder[r]; int i = map.get(root); TreeNode node = new TreeNode(root); node.left = recur(left, i-1, l, l+i-1-left); node.right = recur(i+1, right, l+i-left, r-1); return node; } }
http://www.jsqmd.com/news/156378/

相关文章:

  • NCMconverter全面解析:轻松实现NCM到MP3/FLAC的高效转换
  • Docker日志驱动配置:追踪PyTorch训练输出
  • 百度网盘提取码终极解决方案:告别资源获取难题
  • PyTorch-CUDA基础镜像更新机制:定期同步上游
  • HuggingFace Datasets库高效加载大规模语料
  • Multisim主数据库无法打开?检查授权状态首选项
  • PyTorch设备(Device)管理:CPU与GPU之间移动张量
  • NM报文如何触发唤醒?Vector Davinci配置实例
  • PyTorch张量广播机制(Broadcasting)详解示例
  • Protel99SE安装界面功能介绍:一文说清各选项
  • 智能网盘资源获取实用指南:3步解决百度云盘提取码难题
  • Elasticsearch下载避坑指南:实战经验分享
  • 从实验到部署无缝衔接:PyTorch基础镜像的设计理念解读
  • GPU算力平台支持PyTorch分布式训练场景
  • Docker健康检查(HEALTHCHECK)监控PyTorch服务状态
  • Scarab模组管理器:轻松掌控空洞骑士自定义体验
  • CUDA内存池(Memory Pool)机制提升PyTorch分配效率
  • 基于CAPL脚本实现错误帧模拟操作指南
  • CANoe平台下读取DTC信息的UDS实现:手把手教程
  • Docker卷挂载持久化PyTorch训练数据
  • 如何快速部署PyTorch-CUDA-v2.6镜像并实现GPU算力最大化
  • Altium Designer教程:AD20规则检查(DRC)详细配置
  • 基于微信小程序的购物商城的设计与实现(源码+论文+部署+安装)
  • 状态编码方法详解:二进制、独热码深度剖析
  • 华硕笔记本性能调优新选择:G-Helper轻量控制方案
  • 超详细版讲解单精度浮点数的精度损失原因与示例
  • 华硕笔记本控制新方案:G-Helper轻量化工具实战指南
  • 3步搞定空洞骑士模组:Scarab管理器超详细使用指南
  • PyTorch安装教程GPU版:从零配置Anaconda到CUDA加速训练
  • Vue.js基础核心知识点梳理:从入门到实践