【※ LeetCode 剑指 Offer 07. 重建二叉树(中等)】尚待完善
题目:
输入某二叉树的前序遍历和中序遍历的结果,请构建该二叉树并返回其根节点。
假设输入的前序遍历和中序遍历的结果中都不含重复的数字。
来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/zhong-jian-er-cha-shu-lcof
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。
解题过程①:
递归
思路来源于LeetCode用户:Ant
/*** Definition for a binary tree node.* public class TreeNode {* int val;* TreeNode left;* TreeNode right;* TreeNode(int x) { val = x; }* }*/
class Solution {public TreeNode buildTree(int[] preorder, int[] inorder) {int n = preorder.length;if(n==0) return null;int rootVal = preorder[0], rootIndex = 0;for(int i=0;i<n;i++){if(inorder[i]==rootVal){rootIndex=i; // 找根节点在中序遍历中的索引break;} }TreeNode root = new TreeNode(rootVal);root.left = buildTree(Arrays.copyOfRange(preorder, 1, 1+rootIndex), Arrays.copyOfRange(inorder, 0, rootIndex));root.right = buildTree(Arrays.copyOfRange(preorder,1+rootIndex, n), Arrays.copyOfRange(inorder, 1+rootIndex,n));return root;}
}
执行结果①:
解题过程②:
尚待完善
执行结果②:
【※ LeetCode 剑指 Offer 07. 重建二叉树(中等)】尚待完善相关推荐
- 【LeetCode】剑指 Offer 07. 重建二叉树
[LeetCode]剑指 Offer 07. 重建二叉树 文章目录 [LeetCode]剑指 Offer 07. 重建二叉树 package offer;import java.util.ArrayD ...
- 剑指 Offer 07. 重建二叉树【千字分析,三种方法】
立志用最少的代码做最高效的表达 输入某二叉树的前序遍历和中序遍历的结果,请重建该二叉树.假设输入的前序遍历和中序遍历的结果中都不含重复的数字. 例如,给出 前序遍历 preorder = [3,9,2 ...
- 剑指offer 07重建二叉树(根据前序、中序遍历)草真tm难
/*** Definition for a binary tree node.* public class TreeNode {* int val;* TreeNode left;* TreeNode ...
- 剑指 Offer 07. 重建二叉树
⭐简单说两句⭐ CSDN个人主页:后端小知识
- 剑指Offer #04 重建二叉树(递归)
题目来源:牛客网-剑指Offer专题 题目地址:重建二叉树 题目描述 输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树.假设输入的前序遍历和中序遍历的结果中都不含重复的数字.例如输入前序遍历序 ...
- [剑指offer]8.重建二叉树
题目 输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树.假设输入的前序遍历和中序遍历的结果中都不含重复的数字.例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2, ...
- 剑指Offer系列 重建二叉树
题目:输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树. 假设输入的前序遍历和中序遍历的结果中都不含重复的数字. 例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7, ...
- 剑指offer之重建二叉树
1 问题 重建二叉树:给定二叉树的先序遍历(根左右)和中序(左中右)遍历结果,建立这棵二叉树.输入保证二叉树无重复结点 以先序{1, 2, 4, 7, 3, 5, 6, 8}和中序{4, 7, 2, ...
- 剑指offer——7.重建二叉树
题目: 题目:输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树.假设输入的前序遍历和中序遍历的结果中都不含重复的数字.例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4, ...
最新文章
- 最新机器学习开源项目Top10
- oracle判断数据表的字段内容是否为空
- Android Shell命令dumpsys
- python2048小游戏程序设计大作业_C语言大作业报告——2048小游戏程序
- linux逻辑或的用法,第三课 Linux逻辑运算符
- 入门 Angular 2 杂记
- 【TWVRP】基于matlab蚁群算法求解带时间窗的多中心车辆路径规划问题【含Matlab源码 112期】
- 如何解决时间在前端显示的问题,使用jsel解决,仅供初步接触servlet新手
- Delphi2007下cxComboBox乱码.
- SQL 后计算的利器 SPL
- 方正飞翔加密锁_方正飞翔6.0数字版注册机
- odoo15 po文件自动翻译器
- 发电子邮件怎么发,手机发电子邮件教程来了
- stm32复位引脚NRST
- 单摆测重力加速度的算法(Python)
- QT-ico图片的生成
- js几种escape()解码与unescape()编码
- 三.Oracle常用数据类型及单行函数总结
- Matlab 字符串时间戳转化为数值(以秒或毫秒为单位)
- linux中jdk添加字体_在Linux上为Openjdk Java定义/安装字体的位置
热门文章
- WordPress自动采集发布文章01-使用火车头采集目标网站
- matlab悬置非线性位移计算公式,动力总成悬置系统运动包络及工况载荷计算方法...
- VS Code运行C++程序的配置过程
- 单元测试日期使用ibatis将数据库从oracle迁移到mysql的几个修改点
- python3中 os.path.realpath(__file__) 的使用
- C#:Krypton控件使用方法详解(第九讲) ——kryptonRadioButton
- Android 实现一键反混淆功能
- C++读写CSV文件
- 深入探究Qt HTTP的内部构架
- 校验手机号码和固定电话的正则