A simple hash table implemented as multiple buckets. HashFnc is any extended hash function: HashFnc(key) = {index1, index2, …, }.
Public Functions
-
SimpleHashTable(const HashFnc &h)
-
void init(size_t size)
Init the number of bins in the hash table.
-
void insert(Key key, Data value)
-
std::vector<Data> query(Key key) const
Find the elements in the hash table whose key is the same as query key.
-
void remove(Key key, Data value)
remove the key-value pair from the table
-
void clear()
clear the hash table
Protected Types
-
typedef std::list<Data> Bin
Protected Attributes
-
std::vector<Bin> table_
-
HashFnc h_
-
size_t table_size_