Question: QUESTION 1 Description: In your homework you had to create a linked list and a hash table using your linked list class. In that


QUESTION 1 Description: In your homework you had to create a linked

QUESTION 1 Description: In your homework you had to create a linked list and a hash table using your linked list class. In that solution you used a linked list class within a hash table class. For this task, create a simple hash table that implements separate chaining directly and does NOT use a linked list class. Use the "Hash Table: Separate Chaining" presentation given in class as a guide and implement the case "Separate Chaining Methods: Array of Head Pointers." Use the standard Data and Node structs we have been using in class for Nodes, but you will not need a "previous" pointer. Your linked lists need to only be singly linked and do not need to maintain order (this makes things much simpler). Specifications: Use the "Hash Table: Separate Chaining" presentation given in class as a guide, and implement the case "Separate Chaining Methods: Array of HeadPointers." Use the linked list repos shown in class as a guide. The links to those repos are in your linked list homework instructions. Your linked lists MUST be singly linked (just always insert to the head or tail) and do not maintain order within each list. Conform to all the definitions of standard hash table implementing separate chaining where the hash table ADT itself implements the linked list methods (rather than having a linked list class embedded in the hash table). Implement the addEntry, removeEntry, getEntry, count, and display Table methods. Use modulo for your hash function. Make your hash table size 10. Make a complete and properly architected, loosely-coupled class as discussed in lectures and notes, and conforming to all best practices. Make a main.cpp, main.h to test your hash table. Make all appropriate, complete, and exhaustive tests to prove your class works. Turn in only 4 files, main.cpp, main.h, hash.cpp, hash.h. Everything your program needs MUST be in those four files and ONLY those four files with those exact filenames. Hint: Although you may not have more than one class per set of h/cpp file, you may include supporting structs in your class header file. Your code will be graded no different than any normal homework submission and must conform to all class submission guidelines. Your code MUST compile with ONLY the files you submit, nothing more nothing less. If your code does not compile at the command line with the standard compile command given in class there will be a significant grade penalty, up to and including a grade of 0. You will be graded based on all best practice guidelines presented in class. Submission: When you are ready to submit, place your 4 files in a single zip file, attach it to this question and upload it. Your zip file must contain ONLY those 4 files, no other files, no project or IDE files, no Mac OS files, and no directories including no top level directory). Inclusion of any other files/directories will incur an automatic 5% penalty. Mac people, you cannot use the built in zip utility because it will add extra files you cannot see, but Linux can (you are graded on Linux). Use the command line or a 3rd party zip utility to zip. Double check your zip files before submitting! Attach File 50 poin

Step by Step Solution

3.32 Rating (149 Votes )

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock

It sounds like you have a detailed task at hand for implementing a hash table with separate chaining directly without using a linked list class The re... View full answer

blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Programming Questions!