将哈希函数值转换为整数值可以在m位范围的布隆过滤器中使用

时间:2015-08-28 19:20:27

标签: algorithm data-structures hash bloom-filter

这里有一些关于Bloom Filter

的基本知识

有人可以向我解释如何将哈希函数(比如说md5,sha1或任何其他预定义的哈希函数)转换为范围0到m的整数值,其中m是布隆过滤器的位范围。 / p>

我想知道如何从定义的范围中获取哈希函数的值,我可以使用它在布隆过滤器中进行索引。

直到知道我已提到:

1。Using hash functions with Bloom filters

2。How to map hashfunction output to bloomfilter indices?

http://billmill.org/bloomfilter-tutorial/

但是在所有这些中都没有给出示例,在最后一个中他们使用了javascript,并使用了Jenkins 96 bit mix function和2个散列函数fnvmurmur,这对于理解。

我理解的是我们将哈希函数值除以例如:使用md5 "0cc175b9c0f1b6a831c399e269772661"并将它除以4位的块或任意位数的块进行4位除法我们做" 0cc1" " 75b9"但那后呢?

我无法理解在此步骤之后我们做了什么,以及我们如何设置范围,使其不应大于布隆过滤器的ARRAY大小。

有人能用php或c ++语言为我提供一个实时的基本示例吗?

我知道md5不是一个你应该在绽放过滤器中的功能,但我只需要理解我们如何做的概念。

0 个答案:

没有答案