Bloom Filter¶
-
template<std::size_t
HC
, std::size_tMC
, template<typename...> classHF
= mmh3_hash_factory, typenameT
= std::string, typenameS
= uint32_t>
classpdstl
::
bloom_filter
: public pdstl::membership<T>¶ Standard Bloom Filter.
bloom_filter class implements bloom filter algorithm for solving membership problem.
- Template Parameters
HC
: - Number of hash functionsMC
: - Number of memory bitsHF
: - Hash factory method class (default: pdstl::mmh3_hash_factory)T
: - Element type which will be inserted into bloom filter (default: std::string)S
: - Hash output size (default: uint32_t)
Subclassed by pdstl::counting_bloom_filter< HC, MC, C, HF, T, S >
Public Functions
-
bloom_filter
()¶ Default constructor.
-
void
insert
(const T &item) override¶ insert an item into bloom filter
Insert item into bloom filter.
- Parameters
item
: - the item to insert into the bloom filter.
-
void
erase
(const T &item) override¶ erase an item from bloom filter
Erase is not supported in standard bloom filter. Calling this method will throw an exception
- Parameters
item
: - the item to erase from filter.
-
void
clear
() override¶ clear filter and resets its internal memory.