lab_hash
Hellish Hash Tables
hashes Namespace Reference

hashes namespace: a collection of templated hash functions. More...

Functions

template<>
unsigned int hash (const char &key, int size)
 Specialized hash() function for character keys. More...
 
template<>
unsigned int hash (const std::string &key, int size)
 Specialized hash() function for std::string keys. More...
 
template<class K >
unsigned int hash (const K &key, int size)
 Computes the hash code of a given key (templated), and returns it modulo size for use in HashTable applications. More...
 

Detailed Description

hashes namespace: a collection of templated hash functions.

Author
Chase Geigle
Date
Summer 2012

Function Documentation

◆ hash() [1/3]

template<>
unsigned int hashes::hash ( const char &  key,
int  size 
)

Specialized hash() function for character keys.

◆ hash() [2/3]

template<>
unsigned int hashes::hash ( const std::string key,
int  size 
)

Specialized hash() function for std::string keys.

◆ hash() [3/3]

template<class K >
unsigned int hashes::hash ( const K &  key,
int  size 
)

Computes the hash code of a given key (templated), and returns it modulo size for use in HashTable applications.

This function must be specialized in order for one of SCHashTable or LPHashTable to contain keys of the specialized type.

Parameters
keyThe key to be hashes.
sizeWhat to modulo the hashcode by.
Returns
The hashcode, modulo size for use as a HashTable index.