摘要: 1、从300万字符串中找到最热门的10条搜索的输入信息是一个字符串,统计300万输入信息中的最热门的前10条,我们每次输入的一个字符串为不超过255byte,内存使用只有1G。请描述思想,写出算法(c语言),空间和时间复杂度。255字节*300万=7,5500,0000字节=755,000K=755M=0.75G所以完全可以放入内存处理,建立一个字符串的Hash数组,然后遍历所有字符串,相应的加一处理,然后排序即可,算法负责度极为O(n)2、如何找出字典中的兄弟单词。给定一个单词a,如果通过交换单词中字母的顺序可以得到另外的单词b,那么定义b是a的兄弟单词。现在给定一个字典,用户输入一个单词, 阅读全文
posted @ 2013-11-13 15:32 李秋 阅读(804) 评论(0) 推荐(0)
摘要: 双十一已经过去了,闲暇时间收集了一些算法试题,分享一下!1、实现一个函数,对一个正整数n,算得到1需要的最少操作次数。操作规则为:如果n为偶数,将其除以2;如果n为奇数,可以加1或减1;一直处理下去。例子:func(7) = 4,可以证明最少需要4次运算n = 7n-1 6n/2 3n-1 2n/2 1要求:实现函数(实现尽可能高效) int func(unsign int n);n为输入,返回最小的运算次数。给出思路(文字描述),完成代码,并分析你算法的时间复杂度。 $y) return $y+1; else return $x+1;}echo func(7... 阅读全文
posted @ 2013-11-13 14:42 李秋 阅读(644) 评论(0) 推荐(0)