Template Class SparseHashTable

Class Documentation

template<typename Key, typename Data, typename HashFnc, template<typename, typename> class TableT = unordered_map_hash_table>
class SparseHashTable

A hash table implemented using unordered_map.

Public Functions

SparseHashTable(const HashFnc &h)
void init(size_t)

Init the hash table. The bucket size is dynamically decided.

void insert(Key key, Data value)

insert one key-value pair into the hash table

std::vector<Data> query(Key key) const

find the elements whose key is the same as the query

void remove(Key key, Data value)

remove one key-value pair from the hash table

void clear()

clear the hash table

Protected Types

typedef std::list<Data> Bin
typedef TableT<size_t, Bin> Table

Protected Attributes

HashFnc h_
Table table_