Answered step by step
Verified Expert Solution
Question
1 Approved Answer
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 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
Step: 1
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...Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started