Template Class SimpleHashTable

Class Documentation

template<typename Key, typename Data, typename HashFnc>
class SimpleHashTable

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_