notes32

notes32 - Data Structures Gustavo Rodriguez-Rivera Spring...

Info iconThis preview shows pages 1–2. Sign up to view the full content.

View Full Document Right Arrow Icon
Data Structures Gustavo Rodriguez-Rivera Spring '08 | Week5 HashTables Implementation of a HashTable in C++: HashTableVoid.h: // Each hash entry stores a key, object pair struct HashTableVoidEntry { const char * _key; void * _data; HashTableVoidEntry * _next; }; // This is a Hash table that maps string keys to objects of type Data class HashTableVoid { public: // Number of buckets enum { TableSize = 2039}; // Array of the hash buckets. HashTableVoidEntry **_buckets; // Obtain the hash code of a key int hash(const char * key); public: HashTableVoid(); // Add a record to the hash table. Returns true if key already exists. // Substitute content if key already exists. bool insertItem( const char * key, void * data); // Find a key in the dictionary and place in "data" the corresponding record // Returns false if key is does not exist bool find( const char * key, void ** data); // Removes an element in the hash table. Return false if key does not exist. bool removeElement(const char * key);
Background image of page 1

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
Image of page 2
This is the end of the preview. Sign up to access the rest of the document.

This note was uploaded on 02/02/2012 for the course CS 251 taught by Professor Staff during the Fall '08 term at Purdue.

Page1 / 5

notes32 - Data Structures Gustavo Rodriguez-Rivera Spring...

This preview shows document pages 1 - 2. Sign up to view the full document.

View Full Document Right Arrow Icon
Ask a homework question - tutors are online