- 博客(8)
- 资源 (6)
- 收藏
- 关注
原创 笔试面试题之后缀数组
给定一个字符串,求出其最长的重复子串。 思路:使用后缀数组,对一个字符串生成相应的后缀数组后,然后再排序,排完序依次检测相邻的两个字符串的开头公共部分。 这样的时间复杂度为:生成后缀数组 O(N),排序 O(NlogN*N) 最后面的 N 是因为字符串比较也是 O(N),依次检测相邻的两个字符串 O(N * N),总的时间复杂度是 O(N^2*logN)。 在字符串处理当中,后缀树和
2013-07-26 11:33:28 589
原创 笔试面试题之Fibonacci数列
跳台阶问题。 一个台阶总共有n 级,如果一次可以跳1 级,也可以跳2 级。求总共有多少总跳法,并分析算法的时间复杂度。 我们把n级台阶时的跳法看成是n的函数,记为f(n)。当n>2时,第一次跳的时候就有两种不同的选择:一是第一次只跳1级,此时跳法数目等于后面剩下的n-1级台阶的跳法数目,即为f(n-1);另外一种选择是第一次跳2级,此时跳法数目等于后面剩下的n-2级台阶的跳法数目,即为f(n-
2013-07-24 10:53:18 556
原创 笔试面试题之递归
1.字符串的全排列。 全排列就是从第一个数起每个数分别与它后面的数交换。 递归实现 从集合中依次选出每一个元素,作为排列的第一个元素,然后对剩余的元素进行全排列,如此递归处理,从而得到所有元素的全排列。以对字符串abc进行全排列为例,我们可以这么做:以abc为例 固定a,求后面bc的排列:abc,acb,求好后,a和b交换,得到bac 固定b,求后面ac的排列:bac,bca,求好后
2013-07-24 10:44:32 589
转载 海量数据处理
分而治之/hash映射 + hash统计 + 堆/快速/归并排序; 300万个查询字符串中统计最热门的10个查询。 针对此类典型的TOP K问题,采取的对策往往是:hashmap + 堆。 hash统计:先对这批海量数据预处理。具体方法是:维护一个Key为Query字串,Value为该Query出现次数的HashTable,即hash_map(Query,Value),每次读
2013-07-23 14:55:04 465
原创 笔试面试题之字符串
最大子序列 最大子序列是要找出由数组成的一维数组中和最大的连续子序列。比如{5,-3,4,2}的最大子序列就是 {5,-3,4,2},它的和是8,达到最大;而 {5,-6,4,2}的最大子序列是{4,2},它的和是6。你已经看出来了,找最大子序列的方法很简单,只要前i项的和还没有小于0那么子序列就一直向后扩展,否则丢弃之前的子序列开始新的子序列,同时我们要记下各个子序列的和,最后找到和最大的
2013-07-18 21:06:29 460
原创 1024!末尾有几个零
不是5的倍数无论和哪个相乘都不可能出现个位为0的结果。 25 * 4 = 100,能产生两个0,同理(75 = 25 * 3 = 5 * 5 *3)* 4 = 300;(125 = 5 * 5 * 5 )* 8 = 1000; 即一个数包含多少个因子5其就可以同足够的偶数相乘产生相同个数的末位0。 总结如下:N的阶乘中末位0的个数为:N/5 + N/25 + N/125 ……
2013-07-12 15:55:36 682
原创 遇见最美的时光
17岁,正是花样年华,孤身一人,来到一座古城求学。 在这里遇见形形色色的人,结实了许多各具特色的朋友,有永远活泼不着调却给人最深依赖感的Z,有总是默默低调又能在瞬间爆发最大存在感的S.... 一切都仿佛早就注定,一切又是那么不经意,正如那些大家都懂得的道理,然而,没有几人能做到的完美无敌。 屈原大夫曾经说过,路漫漫其修远兮,吾将上下而求索。 其实路没有那么漫长,如同只是睡了一觉,翻
2012-12-06 13:43:02 410
原创 过了20岁,我们要记得
1.要坚信一个真理:这个世界上只有妈妈永远对你好。 朋友可能为利益反面,男朋友随时可能背叛,老公可能会出轨。永远只有父母对你掏心掏肺。 你20岁了,你记不记得自己青春反叛的时候怎么气过他们,他们怎么哭着求你不要变坏。 你20岁了,父母都快年过半百了,你要对他们好的时间已经不多了。 不要等失去的时候才哭着说当时年少不懂事,没有好好孝敬父母。
2009-12-08 15:05:00 581
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人