主元素(Majority Number)定义为数组中出现次数严格超过一半的数。找到这个数。要求使用O(1)的额外空间和O(n)的时间。
进阶1:如果数组中存在且只存在一个出现次数严格超过1/3的数,找到这个数。要求使用O(1)的额外空间和O(n)的时间。
进阶2:如果数组中存在且只存在一个出现次数严格超过1/k的数,找到这个数。要求使用O(k)的额外空间和O(n)的时间...
分类:
编程语言 时间:
2015-05-12 15:43:48
阅读次数:
130
有一个仅有0和1组成的01串,找到其中最长的一段子串,使得该子串中0和1的数目相等...
分类:
编程语言 时间:
2015-05-12 15:42:58
阅读次数:
201
给定一个只包含正整数的数组,给出一个方法,将数组中的数拼接起来,使得拼接后的数最大。例如,[1, 32, 212]拼接之后,所得到的最大数为322121。...
分类:
编程语言 时间:
2015-05-12 15:42:55
阅读次数:
145
有一副扑克有2n张牌,用1,2,..2*n代表每一张牌,一次洗牌会把牌分成两堆,1,2..n和n+1...2n。然后再交叉的洗在一起:n+1, 1, n+2, 2, … n, 2n。问按照这种技巧洗牌,洗多少次能够洗回扑克最初的状态:1,2,...2n。...
分类:
编程语言 时间:
2015-05-12 15:42:22
阅读次数:
146
给一个数组A,和一个整数k,将数组分成两个部分(你可以移动数组中的数),使得左边部分的数都=k。要求使用O(1)的额外空间,和O(n)的时间。...
分类:
编程语言 时间:
2015-05-12 15:42:19
阅读次数:
148
给定三个字符串A, B, C,判断C是否由A和B交错构成。交错构成的意思是,对于字符串C,可以将其每个字符标记为A类或B类,使得我A类的每个字符顺序构成了A字符串,B类的每个字符顺序构成了B字符串。如:对于A=”rabbit” B=”mq”, ”rabmbitq”是由A和B交错构成的,但”rabbqbitm”不是由A和B交错构成。...
分类:
编程语言 时间:
2015-05-12 15:42:03
阅读次数:
629
给定一个数组A[1..n],求数组B[1..n],使得B[i] = A[1] * A[2] .. * A[i-1] * A[i+1] .. * A[n]。要求不要使用除法,且在O(n)的时间内完成,使用O(1)的额外空间(不包含B数组所占空间)。...
分类:
编程语言 时间:
2015-05-12 15:41:36
阅读次数:
140
1.Maximum Depth of Binary Tree这是道简单的分治习题了分:左子树最大深度右子树最大深度治:最大深度等于max(左子树,右子树)+1public class Solution { public int maxDepth(TreeNode root) { ...
分类:
编程语言 时间:
2015-05-10 15:29:25
阅读次数:
1098
九章算法http://new.ninechapter.com/结构之法 算法之道http://blog.csdn.net/v_JULY_v
分类:
其他好文 时间:
2015-04-10 17:46:55
阅读次数:
122
k SumShow ResultMy Submissionshttp://www.lintcode.com/en/problem/k-sum/题目来自九章算法13%AcceptedGiven n distinct positive integers, integer k (k = 0) { ...
分类:
其他好文 时间:
2015-02-08 09:01:04
阅读次数:
197