At this point, you decide to implement a Hash structure for the contributor data to prepare for searches. You will read the contributor information from a file provided; it is a comma delimited (CSV) file. As each record is read, create a Hash table for the ID field. The limitation for the Hash table is that it has a size of 5, so you need to be able to handle collisions. Collisions should be resolved through the use of a linked list for the ID values (implement this using a stack). Your design should include the following:

A Hash table pointing to a structure for a linked list that contains only the following information:

Each Hash Bucket Collision Item will have the following Information:

  • ID: Integer; //identifier key for future needs

Hash Bucket Functions/Methods:

  • Input constructor: //to accept a string for the name and additional information for each contributor (you will only need the ID portion of the input data)
  • Hash Function constructor: (Hint: You only have 5 Hash buckets, so the function can be a very simple calculation.)
  • Pop constructor
  • Push constructor
  • Print constructor: //to show the contents of a Hash bucket

Deliverables:

  • A fully documented program to load the Hash table with collisions being handled as a linked list, implemented as a Stack
  • A test plan to show how the program runs and can be executed
  • A screenshot showing that the program loaded the data, and after all data is loaded, shows the contents of the first Hash bucket (ideally this is Bucket 0)
Academic Honesty!
It is not our intention to break the school's academic policy. Posted solutions are meant to be used as a reference and should not be submitted as is. We are not held liable for any misuse of the solutions. Please see the frequently asked questions page for further questions and inquiries.
Kindly complete the form. Please provide a valid email address and we will get back to you within 24 hours. Payment is through PayPal, Buy me a Coffee or Cryptocurrency. We are a nonprofit organization however we need funds to keep this organization operating and to be able to complete our research and development projects.