
大数据处理
坚持是一种信仰
这个作者很懒,什么都没留下…
展开
-
大数据处理 --- 布隆过滤器(Bloom Filter)
布隆过滤器 假如有1亿个不重复的正整数(大致范围已知),但是只有1G的内存可用,如何判断该范围内的某个数是否出现在这1亿个数中?最常用的处理办法是利用位图,1*108/1024*1024*8=11.9,也只需要申请12M的内存。但是如果是1亿个邮件地址,如何确定某个邮件地址是否在这1亿个地址中?这个时候可能大家想到的最常用的办法就是利用Hash表了,但是大家可以细想一下,如果利用Hash表来转载 2013-11-25 10:05:18 · 484 阅读 · 0 评论 -
大数据处理 --- 求中位数
中位数并不是大小位于中间的数,而是排序之后,位置位于中间的数。若是n个数,n为奇数,则中位数是数组a[ ]排序之后 a[(n+1)/2] ; 若n为偶数,中位数是(a[n/2] + a[n/2+1])/2如: 5 5 5 6 7 8 9 中位数是6题目:只有2G内存的pc机,在一个存有10G个整数的文件,从中找到中位数,写一个算法对于海量数据求中位数,在网上看到两种方法。原创 2013-11-25 14:34:35 · 1711 阅读 · 0 评论 -
十道海量数据处理题
第一部分、十道海量数据处理面试题1、海量日志数据,提取出某日访问百度次数最多的那个IP。 首先是这一天,并且是访问百度的日志中的IP取出来,逐个写入到一个大文件中。注意到IP是32位的,最多有个2^32个IP。同样可以采用映射的方法,比如模1000,把整个大文件映射为1000个小文件,再找出每个小文中出现频率最大的IP(可以采用hash_map进行频率统计,然后再找出频率最大的几转载 2013-11-25 14:40:58 · 499 阅读 · 0 评论