bloomfilter 以及count min sketch

Posted rebeca8

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了bloomfilter 以及count min sketch相关的知识,希望对你有一定的参考价值。

bloomfilter

http://blog.csdn.net/v_july_v/article/details/6685894

count min sketch

http://www.cnblogs.com/fxjwind/p/3289221.html

这个方法比较简单, 原理就是, 使用二维的hash table, w是hash table的取值空间, d是hash函数的个数 
对某个element, 分别使用d个hash函数计算相应的hash值, 并在对应的bucket上递增1, 每个bucket的值称为sketch, 如图 
然后在查询某个element的frequency时, 只需要取出所有d个sketch, 然后取最小的那个作为预估值, 如其名

因为为了节省空间, w*d是远小于真正的element个数的, 所以必然会出现很多的冲突, 而最小的那个应该是冲突最少的, 最精确的那个

这个方法的思路和bloom filter比较类似, 都是通过多个hash来降低冲突带来的影响

image

以上是关于bloomfilter 以及count min sketch的主要内容,如果未能解决你的问题,请参考以下文章

浅谈BloomFilter下用Java实现BloomFilter

SP34096 DIVCNTK - Counting Divisors (general) min_25筛

这个程序为啥可以延时一秒: while(t[0].ti_sec==s&&t[0].ti_min==m&&t[0].ti_hour==h) gettime(t);

SQL中的函数以及实例

Python之函数定义函数以及传参

100以内数字和以及所有奇数