力扣题解 26th 删除排序数组中的重复项 双指针法/游标思想 定义: i i为游标,它代表了答案序列的脚步。j用来探测当前序列后面的数字是否与i位置的数字相同,若相同就跳过,若不同就让它覆盖下一位置的元素。 ...
分类:
编程语言 时间:
2020-05-10 15:11:29
阅读次数:
69
输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2,1,5,3,8,6},则重建二叉树并返回。
题目:输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2,1,5,3,8,6},则重建二叉树并返回。 分析: 根据先序遍历序列第一个节点确定根节点。 根据根节 ...
分类:
其他好文 时间:
2020-05-10 11:01:30
阅读次数:
69
面试题004 重建二叉树 题目表述: 输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2,1,5,3,8,6},则重建二叉树并返回。 解题思路: 递归思想。前 ...
分类:
编程语言 时间:
2020-05-09 23:25:07
阅读次数:
73
题目描述 输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2,1,5,3,8,6},则重建二叉树并返回。 思路:使用递归的思想。 1 前序遍历的第一个数字pr ...
分类:
其他好文 时间:
2020-05-09 21:35:55
阅读次数:
50
题目: 解答: 1 /** 2 * Definition for a binary tree node. 3 * struct TreeNode { 4 * int val; 5 * TreeNode *left; 6 * TreeNode *right; 7 * TreeNode(int x) : ...
分类:
其他好文 时间:
2020-05-09 13:08:27
阅读次数:
76
题目: 解答: 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
一、简介 二叉树的三种遍历方式我相信大家都了然于心,前序遍历、中序遍历、后序遍历。对于这三种遍历的递归实现,我们都不容易忘记。不过,对于非递归实现,我相信会有很多人会跟我一样,背了忘,再背再忘......(很多算法题都是这样,比如各种排序算法的实现)。经过认真观察思考后,发现实现起来是那么的简单,只 ...
分类:
其他好文 时间:
2020-05-09 09:11:48
阅读次数:
64
Define: 前序遍历 同二叉树前序遍历。 递归 非递归 后序遍历 同二叉树的后序遍历。 递归 非递归 ...
分类:
其他好文 时间:
2020-05-07 15:52:30
阅读次数:
65
思路:前序是根左右,前序序列第一个元素一定是根。中序是左,根,右。根节点左边一定是左子树,右边一定是右子树。 树没有重复元素,所以,先找出根节点,初始化一个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