public abstract class AbstractMultiHashBloomFilter extends Object implements BloomFilter
| 限定符和类型 | 字段和说明 |
|---|---|
protected int |
expectSize
预计所要包含的记录数
|
protected int |
hashCapacity
当前过滤器预先开辟的最大空间,通常要比预计存入的记录多一倍,同时要考虑哈希计算次数(同比增加)
|
protected int |
hashCount
哈希计算函数的个数
|
| 限定符 | 构造器和说明 |
|---|---|
|
AbstractMultiHashBloomFilter(Function<String,Integer>[] hashFunctions,
int hashCount,
int hashCapacity,
int expectSize) |
|
AbstractMultiHashBloomFilter(int hashCount,
int hashCapacity) |
protected |
AbstractMultiHashBloomFilter(int hashCount,
int hashCapacity,
int expectSize) |
| 限定符和类型 | 方法和说明 |
|---|---|
boolean |
add(String data)
布隆过滤器中添加目标字符串。
|
protected boolean |
contains(int[] hashes) |
boolean |
contains(String data)
使用布隆过滤器判断字符串是否存在
|
protected double |
estimateFnr()
预估的过滤器错误率 False Negative Rate (FNR).
|
protected abstract boolean |
getBit(int position) |
protected int[] |
hash(String data)
生成多种类型Hash值
|
protected int |
hash(String data,
int seq)
计算Hash值
|
protected abstract void |
setBit(int position) |
protected final int hashCount
protected final int hashCapacity
protected final int expectSize
public AbstractMultiHashBloomFilter(int hashCount,
int hashCapacity)
hashCount - 哈希计算函数的个数hashCapacity - 当前过滤器预先开辟的最大空间, 通常要比预计存入的记录多一倍,同时要考虑哈希计算次数(同比增加)protected AbstractMultiHashBloomFilter(int hashCount,
int hashCapacity,
int expectSize)
hashCount - 哈希计算函数的个数hashCapacity - 当前过滤器预先开辟的最大空间, 通常要比预计存入的记录多一倍,同时要考虑哈希计算次数(同比增加)expectSize - 预计所要包含的记录数protected abstract boolean getBit(int position)
protected abstract void setBit(int position)
public boolean contains(String data)
BloomFiltercontains 在接口中 BloomFilterpublic boolean add(String data)
BloomFilteradd 在接口中 BloomFilterprotected boolean contains(int[] hashes)
protected double estimateFnr()
protected int[] hash(String data)
data - 被计算Hash的字符串protected int hash(String data, int seq)
data - 被计算Hash的字符串seq - Hash算法序号Copyright © 2024 fossc. All rights reserved.