#include <iostream>
#include <string>
#include "bloom_filter.hpp"
Go to the source code of this file.
◆ main()
Definition at line 32 of file bloom_filter_example01.cpp.
References bloom_parameters::compute_optimal_parameters(), bloom_filter::contains(), bloom_parameters::false_positive_probability, bloom_filter::insert(), bloom_parameters::projected_element_count, and bloom_parameters::random_seed.
47 std::cout <<
"Error - Invalid set of bloom filter parameters!" << std::endl;
56 std::string str_list[] = {
"AbC",
"iJk",
"XYZ" };
61 for (std::size_t i = 0; i < (
sizeof(str_list) /
sizeof(std::string)); ++i)
63 filter.insert(str_list[i]);
67 for (std::size_t i = 0; i < 100; ++i)
76 for (std::size_t i = 0; i < (
sizeof(str_list) /
sizeof(std::string)); ++i)
78 if (filter.contains(str_list[i]))
80 std::cout <<
"BF contains: " << str_list[i] << std::endl;
85 for (std::size_t i = 0; i < 100; ++i)
87 if (filter.contains(i))
89 std::cout <<
"BF contains: " << i << std::endl;
93 std::string invalid_str_list[] = {
"AbCX",
"iJkX",
"XYZX" };
96 for (std::size_t i = 0; i < (
sizeof(invalid_str_list) /
sizeof(std::string)); ++i)
98 if (filter.contains(invalid_str_list[i]))
100 std::cout <<
"BF falsely contains: " << invalid_str_list[i] << std::endl;
105 for (
int i = -1; i > -100; --i)
107 if (filter.contains(i))
109 std::cout <<
"BF falsely contains: " << i << std::endl;
virtual bool compute_optimal_parameters()
unsigned long long int random_seed
double false_positive_probability
unsigned long long int projected_element_count