摘要: 给40亿个不重复的unsigned int的整数,没排过序的,然后再给一个数,如何快速判断这个数是否在那40亿个数当中?其实这一题有个问题,如果只要判断一次的话,那就遍历这40亿个数就好了,时间复杂度O(n),没有更快的了。但是如果要判断两个数,三个数,那就要多次遍历所有数,显然是不行的。思路: ... 阅读全文
posted @ 2014-08-29 18:58 米其林轮船 阅读(304) 评论(0) 推荐(0) 编辑
摘要: 有一个1G大小的一个文件,里面每一行是一个词,词的大小不超过16字节,内存限制大小是1M。返回频数最高的100个词。思路: 把这1G的数据一次性全部读入内存是不可能了,可以每次读一行,然后将该词存到一个哈希表里去,哈希表的value是词出现的次数。 现在的问题是,这个哈希表有多大,能不能装载1M... 阅读全文
posted @ 2014-08-29 17:27 米其林轮船 阅读(2225) 评论(0) 推荐(1) 编辑
摘要: 基本概念所谓完美哈希函数,就是指没有冲突的哈希函数,即对任意的 key1 != key2 有h(key1) != h(key2)。设定义域为X,值域为Y, n=|X|,m=|Y|,那么肯定有m>=n,如果对于不同的key1,key2属于X,有h(key1)!=h(key2),那么称h为完美哈希函数,... 阅读全文
posted @ 2014-08-29 16:52 米其林轮船 阅读(1222) 评论(0) 推荐(0) 编辑