题目描述 输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2,1,5,3,8,6},则重建二叉树并返回。 题解:递归 1 public static Tree ...
分类:
其他好文 时间:
2020-02-20 23:38:23
阅读次数:
85
38. 二叉树的深度 题目描述 输入一棵二叉树,求该树的深度。从根结点到叶结点依次经过的结点(含根、叶结点)形成树的一条路径,最长路径的长度为树的深度。 1 class Solution { 2 public: 3 // 前序递归遍历,分别统计左右子树的高度 4 int preOrder(TreeN ...
分类:
其他好文 时间:
2020-02-19 23:41:34
阅读次数:
84
遍历一棵二叉树常用的有四种方法,前序(PreOrder)、中序(InOrder)、后序(PastOrder)还有层序(LevelOrder)。前中后序三种遍历方式都是以根节点相对于它的左右孩子的访问顺序定义的。例如根->左->右便是前序遍历,左->根->右便是中序遍历,左->右->根便是后序遍历。而 ...
分类:
其他好文 时间:
2020-02-19 19:17:37
阅读次数:
86
3.数组中重复数字:每个位置放置数字与下标对应相等 O(n) 4.二维数组中的查找:左下角开始比较 O(m+n) (微软) 5.替换空格:python直接替换 6.从尾到头打印链表:python insert函数 xxx7.重建二叉树:前序中序遍历特点递归 xxx8.二叉树的下一个节点:根据中序遍历 ...
分类:
其他好文 时间:
2020-02-18 14:36:50
阅读次数:
64
题目 根据一棵树的前序遍历与中序遍历构造二叉树。 注意: 你可以假设树中没有重复的元素。 例如,给出 返回如下的二叉树: 思路:递归 同 "【剑指Offer】面试题07. 重建二叉树" 关键在与正确定位左右子树范围。 代码 另一种写法 修改求根节点索引。 ...
分类:
其他好文 时间:
2020-02-13 21:00:35
阅读次数:
59
越大的元素会经由交换慢慢"浮"到数列的顶端,故名"冒泡排序",每趟都会将当前序列的最大元素放在后面,且冒泡排序分从大到小和从小到大两种排序方式。它们的唯一区别就是两个数交换的条件不同,从大到小排序是前面的数比后面的小的时候交换, 而从小到大排序是前面的数比后面的数大的时候交换。下面是冒泡排序升序的解 ...
分类:
编程语言 时间:
2020-02-13 18:53:47
阅读次数:
66
题目描述 输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2,1,5,3,8,6},则重建二叉树并返回。 思路 将中序数组按照下标i划分两部分,左子树的前序下 ...
分类:
其他好文 时间:
2020-02-13 15:13:17
阅读次数:
73
题目传送门↓http://codeforces.com/problemset/problem/939/E 题意:有一最初为空的不下降序列,有两种操作,一种是在序列里增加一个不小于序列尾的整数,另一种是查询当前序列中的某个子集,其最大值为max,平均值为mean,使得子集的max-mean在当前序列的 ...
分类:
其他好文 时间:
2020-02-11 09:54:10
阅读次数:
62
二叉树的递归遍历很容易写出来,对于递归遍历则需要借助辅助栈,并且不同的遍历次序迭代的写法也不尽相同,这里整理一些二叉树迭代遍历的实现 二叉树的前序遍历 [leetcode144]:https://leetcode cn.com/problems/binary tree preorder traver ...
分类:
其他好文 时间:
2020-02-11 00:35:37
阅读次数:
73
输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2,1,5,3,8,6},则重建二叉树并返回。 ...
分类:
其他好文 时间:
2020-02-10 11:29:15
阅读次数:
63