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.