Bloomy
Bloomy.Lib 1.1
快速C#BLOOM过滤器的实现,该过滤器包装在.NET标准库中。
Bloom过滤器是概率数据结构,旨在消除恒定时间集中的条目。他们使用多个哈希函数在位图中生成位置,因此,在检查阶段,在位图中找不到的非零位消除了给定的搜索矢量。您可以找到有关它们在这里工作的示例。
要将最新的Bloomy软件包版本安装到您的项目中:
Install-Package Bloomy.Lib
一个非常简单的用例是在过滤器中添加字符串,然后检查以后:
BasicFilter filter = new BasicFilter ( 50000 , HashFunc . Murmur3 ) ;
filter . Insert ( "dotnet" ) ;
.. .
FilterResult res = filter . Check ( "dotnet" ) ; FilterResult.Presence给出:
FilterResult.Probability 。 随时开放问题,提交PR,尤其是使用此LIB并进行测试。这仍然是一个正在进行的工作库,随着新的功能即将到来。
麻省理工学院