2016年1月13日
摘要:
根据前序遍历和中序遍历树构造二叉树. 给出中序遍历:[1,2,3]和前序遍历:[2,1,3]. 返回如下的树: 你可以假设树中不存在相同数值的节点 解题 和上一题很类似的。 前序遍历:根左右 中序遍历:左根右 阅读全文
posted @ 2016-01-13 15:44
水滴四川
阅读(918)
推荐(0)
编辑
摘要:
题目 根据中序遍历和后序遍历树构造二叉树 给出树的中序遍历: [1,2,3] 和后序遍历: [1,3,2] 返回如下的树: 2 / \ 1 3 你可以假设树中不存在相同数值的节点 解题 1.后序遍历最后一个结点就是根节点,根据这个根结点把中序遍历划分开来,同时也把后续遍历划分开来 2.递归就好了 程 阅读全文
posted @ 2016-01-13 15:23
水滴四川
阅读(722)
推荐(0)
编辑
摘要:
题目 二叉树的锯齿形层次遍历 给出一棵二叉树,返回其节点值的锯齿形层次遍历(先从左往右,下一层再从右往左,层与层之间交替进行) 给出一棵二叉树,返回其节点值的锯齿形层次遍历(先从左往右,下一层再从右往左,层与层之间交替进行) 给出一棵二叉树,返回其节点值的锯齿形层次遍历(先从左往右,下一层再从右往左 阅读全文
posted @ 2016-01-13 11:44
水滴四川
阅读(1508)
推荐(0)
编辑
摘要:
题目 给出一棵二叉树,返回其节点值从底向上的层次序遍历(按从叶节点所在层到根节点所在的层遍历,然后逐层从左往右遍历) 给出一棵二叉树 {3,9,20,#,#,15,7}, 按照从下往上的层次遍历为: 解题 和上一题的答案反过来 直接每次在list中第一个位置加入当前层结点 阅读全文
posted @ 2016-01-13 10:27
水滴四川
阅读(802)
推荐(0)
编辑
摘要:
题目 二叉树的层次遍历 给出一棵二叉树,返回其节点值的层次遍历(逐层从左往右访问) 给出一棵二叉树,返回其节点值的层次遍历(逐层从左往右访问) 给出一棵二叉树,返回其节点值的层次遍历(逐层从左往右访问) 样例 给一棵二叉树 {3,9,20,#,#,15,7} : 3 / \ 9 20 / \ 15 阅读全文
posted @ 2016-01-13 09:43
水滴四川
阅读(2117)
推荐(1)
编辑
2016年1月12日
摘要:
题目 下一个排列 给定一个整数数组来表示排列,找出其之后的一个排列。 给定一个整数数组来表示排列,找出其之后的一个排列。 给定一个整数数组来表示排列,找出其之后的一个排列。 样例 给出排列[1,3,2,3],其下一个排列是[1,3,3,2] 给出排列[4,3,2,1],其下一个排列是[1,2,3,4 阅读全文
posted @ 2016-01-12 22:03
水滴四川
阅读(980)
推荐(0)
编辑
摘要:
题目 上一个排列 给定一个整数数组来表示排列,找出其上一个排列。 给定一个整数数组来表示排列,找出其上一个排列。 给定一个整数数组来表示排列,找出其上一个排列。 样例 给出排列[1,3,2,3],其上一个排列是[1,2,3,3] 给出排列[1,2,3,4],其上一个排列是[4,3,2,1] 给出排列 阅读全文
posted @ 2016-01-12 21:30
水滴四川
阅读(1431)
推荐(0)
编辑
2016年1月8日
摘要:
题目 设计一个算法,并编写代码来序列化和反序列化二叉树。将树写入一个文件被称为“序列化”,读取文件后重建同样的二叉树被称为“反序列化”。 如何反序列化或序列化二叉树是没有限制的,你只需要确保可以将二叉树序列化为一个字符串,并且可以将字符串反序列化为原来的树结构。 给出一个测试数据样例, 二叉树{3, 阅读全文
posted @ 2016-01-08 20:00
水滴四川
阅读(1698)
推荐(0)
编辑
摘要:
题目 寻找峰值 你给出一个整数数组(size为n),其具有以下特点: 相邻位置的数字是不同的 A[0] < A[1] 并且 A[n - 2] > A[n - 1] 假定P是峰值的位置则满足A[P] > A[P-1]且A[P] > A[P+1],返回数组中任意一个峰值的位置。 你给出一个整数数组(si 阅读全文
posted @ 2016-01-08 16:33
水滴四川
阅读(1068)
推荐(0)
编辑
2016年1月7日
摘要:
题目 搜索旋转排序数组 II 跟进“搜索旋转排序数组”,假如有重复元素又将如何? 是否会影响运行时间复杂度? 如何影响? 为何会影响? 写出一个函数判断给定的目标值是否出现在数组中。 跟进“搜索旋转排序数组”,假如有重复元素又将如何? 是否会影响运行时间复杂度? 如何影响? 为何会影响? 写出一个函 阅读全文
posted @ 2016-01-07 20:22
水滴四川
阅读(383)
推荐(0)
编辑
摘要:
题目 搜索旋转排序数组 假设有一个排序的按未知的旋转轴旋转的数组(比如,0 1 2 4 5 6 7 可能成为4 5 6 7 0 1 2)。给定一个目标值进行搜索,如果在数组中找到目标值返回数组中的索引位置,否则返回-1。 你可以假设数组中不存在重复的元素。 假设有一个排序的按未知的旋转轴旋转的数组( 阅读全文
posted @ 2016-01-07 20:14
水滴四川
阅读(1139)
推荐(0)
编辑
摘要:
题目 搜索区间 给定一个包含 n 个整数的排序数组,找出给定目标值 target 的起始和结束位置。 如果目标值不在数组中,则返回[-1, -1] 给定一个包含 n 个整数的排序数组,找出给定目标值 target 的起始和结束位置。 如果目标值不在数组中,则返回[-1, -1] 给定一个包含 n 个 阅读全文
posted @ 2016-01-07 16:10
水滴四川
阅读(676)
推荐(0)
编辑
2016年1月6日
摘要:
题目 最大子数组差 给定一个整数数组,找出两个不重叠的子数组A和B,使两个子数组和的差的绝对值|SUM(A) - SUM(B)|最大。 返回这个最大的差值。 给定一个整数数组,找出两个不重叠的子数组A和B,使两个子数组和的差的绝对值|SUM(A) - SUM(B)|最大。 返回这个最大的差值。 给定 阅读全文
posted @ 2016-01-06 22:01
水滴四川
阅读(1594)
推荐(0)
编辑
摘要:
题目 最大子数组 II 给定一个整数数组,找出两个不重叠子数组使得它们的和最大。 每个子数组的数字在数组中的位置应该是连续的。 返回最大的和。 给定一个整数数组,找出两个不重叠子数组使得它们的和最大。 每个子数组的数字在数组中的位置应该是连续的。 返回最大的和。 给定一个整数数组,找出两个不重叠子数 阅读全文
posted @ 2016-01-06 20:30
水滴四川
阅读(1460)
推荐(0)
编辑
摘要:
题目: 最大子数组 最大子数组 给定一个整数数组,找到一个具有最大和的子数组,返回其最大和。 样例 给出数组[−2,2,−3,4,−1,2,1,−5,3],符合要求的子数组为[4,−1,2,1],其最大和为6 注意 子数组最少包含一个数 挑战 要求时间复杂度为O(n) 解题: 通过率37%,一定是暴 阅读全文
posted @ 2016-01-06 20:25
水滴四川
阅读(1420)
推荐(0)
编辑
2016年1月5日
摘要:
题目 给定一个二叉树,确定它是高度平衡的。对于这个问题,一棵高度平衡的二叉树的定义是:一棵二叉树中每个节点的两个子树的深度相差不会超过1。 给出二叉树 A={3,9,20,#,#,15,7}, B={3,#,20,15,7} 二叉树A是高度平衡的二叉树,但是B不是 解题 递归求高度 判断左右孩子高度 阅读全文
posted @ 2016-01-05 22:36
水滴四川
阅读(833)
推荐(0)
编辑
摘要:
题目 乱序字符串 给出一个字符串数组S,找到其中所有的乱序字符串(Anagram)。如果一个字符串是乱序字符串,那么他存在一个字母集合相同,但顺序不同的字符串也在S中。 您在真实的面试中是否遇到过这个题? Yes 给出一个字符串数组S,找到其中所有的乱序字符串(Anagram)。如果一个字符串是乱序 阅读全文
posted @ 2016-01-05 22:17
水滴四川
阅读(1209)
推荐(0)
编辑
摘要:
题目 字符大小写排序 给定一个只包含字母的字符串,按照先小写字母后大写字母的顺序进行排序。 您在真实的面试中是否遇到过这个题? Yes 给定一个只包含字母的字符串,按照先小写字母后大写字母的顺序进行排序。 给定一个只包含字母的字符串,按照先小写字母后大写字母的顺序进行排序。 您在真实的面试中是否遇到 阅读全文
posted @ 2016-01-05 19:31
水滴四川
阅读(774)
推荐(0)
编辑
摘要:
题目 用栈实现队列 正如标题所述,你需要使用两个栈来实现队列的一些操作。 队列应支持push(element),pop() 和 top(),其中pop是弹出队列中的第一个(最前面的)元素。 pop和top方法都应该返回第一个元素的值。 正如标题所述,你需要使用两个栈来实现队列的一些操作。 队列应支持 阅读全文
posted @ 2016-01-05 19:06
水滴四川
阅读(535)
推荐(0)
编辑
摘要:
题目翻转链表 II翻转链表中第m个节点到第n个节点的部分样例给出链表1->2->3->4->5->null, m = 2 和n = 4,返回1->4->3->2->5->null注意m,n满足1 ≤ m ≤ n ≤ 链表长度挑战在原地一次翻转完成解题九章中的程序/** * Definition fo... 阅读全文
posted @ 2016-01-05 17:04
水滴四川
阅读(813)
推荐(0)
编辑
摘要:
题目 最小子串覆盖 给定一个字符串source和一个目标字符串target,在字符串source中找到包括所有目标字符串字母的子串。 样例 给出source = "ADOBECODEBANC",target = "ABC" 满足要求的解 "BANC" 注意 如果在source中没有这样的子串,返回" 阅读全文
posted @ 2016-01-05 16:32
水滴四川
阅读(2412)
推荐(0)
编辑
摘要:
题目数组划分给出一个整数数组nums和一个整数k。划分数组(即移动数组nums中的元素),使得:所有小于k的元素移到左边所有大于等于k的元素移到右边返回数组划分的位置,即数组中第一个位置i,满足nums[i]大于等于k。您在真实的面试中是否遇到过这个题?Yes样例给出数组nums=[3,2,2,1]... 阅读全文
posted @ 2016-01-05 14:51
水滴四川
阅读(847)
推荐(0)
编辑
摘要:
题目交叉字符串给出三个字符串:s1、s2、s3,判断s3是否由s1和s2交叉构成。样例比如 s1 ="aabcc"s2 ="dbbca" - 当 s3 ="aadbbcbcac",返回 true. - 当 s3 ="aadbbbaccc", 返回 false.挑战要求时间复杂度为O(n^2)或者... 阅读全文
posted @ 2016-01-05 11:34
水滴四川
阅读(2098)
推荐(0)
编辑
2016年1月4日
摘要:
题目带重复元素的子集给定一个可能具有重复数字的列表,返回其所有可能的子集样例如果 S =[1,2,2],一个可能的答案为:[ [2], [1], [1,2,2], [2,2], [1,2], []]注意子集中的每个元素都是非降序的两个子集间的顺序是无关紧要的解集中不能包含重复子集挑战你可... 阅读全文
posted @ 2016-01-04 20:54
水滴四川
阅读(934)
推荐(0)
编辑
摘要:
题目子集给定一个含不同整数的集合,返回其所有的子集样例如果 S =[1,2,3],有如下的解:[ [3], [1], [2], [1,2,3], [1,3], [2,3], [1,2], []]注意子集中的元素排列必须是非降序的,解集必须不包含重复的子集挑战你可以同时用递归与非递归的... 阅读全文
posted @ 2016-01-04 20:22
水滴四川
阅读(1831)
推荐(0)
编辑
|
|
|