#include #include "Hash.h" using namespace std; int main() { HashTable *numbers = new HashTable(211); // set numbers numbers->put("one", 1); numbers->put("two", 2); numbers->put("three", 3); numbers->put("four", 4); numbers->put("five", 5); numbers->put("neo", 10); numbers->put("TEST", 12); numbers->put("TEST2", 13); // retrieve numbers cout << "one: " << numbers->get("one") << endl << "two: " << numbers->get("two") << endl << "three: " << numbers->get("three") << endl << "four: " << numbers->get("four") << endl << "five: " << numbers->get("five") << endl << "neo: " << numbers->get("neo") << endl << "TEST: " << numbers->get("TEST") << endl << "TEST2: " << numbers->get("TEST2") << endl; return 0; } #ifndef HASHTABLE_H #define HASHTABLE_H #include using namespace std; class HashTable { private: int max; int createHash(char[40]); void internalPut(char[40], int, int); int *hashTable; string *hashTableKeys; public: HashTable() {}; HashTable(int); ~HashTable(); void put(char[40], int); int get(char[40]); }; #endif #include #include "Hash.h" using namespace std; HashTable::HashTable(int newMax) { max = newMax; hashTable = new int[max]; hashTableKeys = new string[max]; // set all values to 0 to default for(int i=0; i max) { cout << "May not add to hash table. Value too large." << endl; } else { if(hashTable[hash] == 0) { internalPut(word, value, hash); } else { for(int i=hash; i<=max; i++) { if(hashTable[i] == 0) { internalPut(word, value, i); return; } if(i == max) { for(int x=0; x