BloomFilter
Parameters
N/AUses internal bit array (not template parameter)
Public Methods
| Return | Name | Description |
|---|---|---|
BloomFilter | Construct a Bloom filter with specified capacity and false positive rate. | |
void | add | Insert an element into the filter. |
bool | has const | Check if element may be in the set. |
void | clear | Reset all bits to zero. |
BloomFilter
inline
Parameters
-
expected_elementsMaximum number of elements expected to be inserted -
false_positive_rateDesired false positive rate (0.0 to 1.0)
Exceptions
-
std::invalid_argumentIf capacity < 1 -
std::invalid_argumentIf false_positive_rate <= 0.0 or >= 1.0
Example:
add
inline
Parameters
itemString to insert
has
const
Parameters
itemString to check
Returns
true if element possibly exists, false if definitely not existsParameters
-
trueElement may be in set (or false positive) -
falseElement is definitely not in set
Example:
clear
inline
Private Attributes
bits_
k_
m_
Private Methods
| Return | Name | Description |
|---|---|---|
std::size_t | hash_fn const | Compute hash at index i using double hashing technique. |
hash_fn
const
Parameters
-
sString to hash -
seedSecondary hash seed