方法一:递归 public TreeNode buildTree(int[] preorder, int[] inorder) { return buildTreeHelper(preorder, 0, preorder.length, inorder, 0, inorder.length); } ...
分类:
其他好文 时间:
2020-05-23 00:43:34
阅读次数:
59
题目描述:根据一棵树的前序遍历与中序遍历构造二叉树。假设树中没有重复的元素。 今日学习: 1.复习二叉树遍历 2.复习map 3.搭建mediasoup demo(websocket连接失败,原因没找到) 4.脚手架是为了减少因为想要减少重复工作而进行的重复工作 "天使爆破组" 果然是小天使,题解一 ...
分类:
其他好文 时间:
2020-05-22 21:23:30
阅读次数:
57
最近在进行前序插入构造二叉树时被 和 & 绊了一下。先贴错误代码: ...
分类:
编程语言 时间:
2020-05-19 12:46:02
阅读次数:
94
题目: 解答: 1 /** 2 * Definition for a binary tree node. 3 * public class TreeNode { 4 * int val; 5 * TreeNode left; 6 * TreeNode right; 7 * TreeNode(int ...
分类:
其他好文 时间:
2020-05-09 13:03:43
阅读次数:
59
思路:前序是根左右,前序序列第一个元素一定是根。中序是左,根,右。根节点左边一定是左子树,右边一定是右子树。 树没有重复元素,所以,先找出根节点,初始化一个TreeNode root,再根据数值相同,找中序遍历里面的根节点,之后用Arrays.copyOfRange(preorder,1,num+1 ...
分类:
其他好文 时间:
2020-05-06 12:18:34
阅读次数:
53
解题思路 1. 看到题目想了想就知道用递归了,不断划分左右子树; 2. 这道题做了很久,因为对 "指针引用" 的不熟悉,一开始我使用的递归函数的返回类型为void,是通过指针作为递归函数的参数,不断更新树,最后改成这种容易看的方式; 3. 主要是要注意划分左右子树的索引,改了很多次都是因为递归时传右 ...
分类:
其他好文 时间:
2020-05-04 17:32:58
阅读次数:
56
题目: 解答: 1 /** 2 * Definition for a binary tree node. 3 * public class TreeNode { 4 * int val; 5 * TreeNode left; 6 * TreeNode right; 7 * TreeNode(int ...
分类:
其他好文 时间:
2020-05-03 16:21:26
阅读次数:
53
从前序与中序遍历序列构造二叉树。题意是给一个二叉树的前序遍历和中序遍历,请根据这两个遍历,把树构造出来。例子, For example, given preorder = [3,9,20,15,7] inorder = [9,3,15,20,7] Return the following binar ...
分类:
其他好文 时间:
2020-04-21 13:31:31
阅读次数:
65
<> 题目描述 根据一棵树的中序遍历与后序遍历构造二叉树。 注意: 你可以假设树中没有重复的元素。 例如,给出 中序遍历 inorder = [9,3,15,20,7] 后序遍历 postorder = [9,15,7,20,3] 返回如下的二叉树: 3 / \ 9 20 / \ 15 7 我的思路 ...
分类:
其他好文 时间:
2020-04-16 00:46:26
阅读次数:
79
二叉树 根节点:树中上部的节点 左叶子节点 右叶子节点 子树 完整的子树 一个根节点,左右叶子节点组成 不完整的子树 根节点,左叶子节点 根节点,右叶子节点 根节点 特点:每一个节点都可以作为某一颗子树的根节点 构造二叉树 想法:创建列表,每次循环判断节点的left和right,如果不为空将该节点放 ...
分类:
其他好文 时间:
2020-04-12 14:24:51
阅读次数:
43