Write a C++ program that: (1) defines and implements a hash class that constructs a 15 element vector, storing strings, using the following hash function: ((first_letter) + (last_letter) - (second_letter))% 15 So, for example, the word "rocky" would be ('r') = 114 + ('y') = 121 - ('o') = 111 = 124%15 = 4
Write a C++ program that: (1) defines and implements a hash class that constructs a 15 element vector, storing strings, using the following hash function: ((first_letter) + (last_letter) - (second_letter))% 15 So, for example, the word "rocky" would be ('r') = 114 + ('y') = 121 - ('o') = 111 = 124%15 = 4
Database System Concepts
7th Edition
ISBN:9780078022159
Author:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Chapter1: Introduction
Section: Chapter Questions
Problem 1PE
Related questions
Question
Write a C++ program that:
(1) defines and implements a hash class that constructs a 15 element vector , storing strings, using the following hash function:
((first_letter) + (last_letter) - (second_letter))% 15
So, for example, the word "rocky" would be
('r') = 114 + ('y') = 121 - ('o') = 111 = 124%15 = 4
In this example, an attempt would be made to store "rocky" in position 4. In the event of a collision, the word would be stored in the first available location, so if there is a collision in location 4, an attempt would be made to store the word in location 5. If an attempt to store a word in position 14 fails because the location is full circle back to location 0 because there is no location 15. If there is a collision in location 0, try location 1, and so on.
I will not try your program with words that are shorter than three letters, so you do not need to consider shorter words.
(2) the driver program should:
a. query the user for ten words and store them using the hash technique described above.
b. print out the contents of each position of the vector, showing vacant as well as filled positions. Remember, only 10 of the 15 positions will be filled.
c. repeatedly query the user for a target word, hash the word, check for its inclusion in the list of stored words, and report the result. Continue doing this task until the user signals to stop (establish a sentinel condition).
Expert Solution
This question has been solved!
Explore an expertly crafted, step-by-step solution for a thorough understanding of key concepts.
This is a popular solution!
Trending now
This is a popular solution!
Step by step
Solved in 3 steps with 2 images
Knowledge Booster
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.Recommended textbooks for you
Database System Concepts
Computer Science
ISBN:
9780078022159
Author:
Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:
McGraw-Hill Education
Starting Out with Python (4th Edition)
Computer Science
ISBN:
9780134444321
Author:
Tony Gaddis
Publisher:
PEARSON
Digital Fundamentals (11th Edition)
Computer Science
ISBN:
9780132737968
Author:
Thomas L. Floyd
Publisher:
PEARSON
Database System Concepts
Computer Science
ISBN:
9780078022159
Author:
Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:
McGraw-Hill Education
Starting Out with Python (4th Edition)
Computer Science
ISBN:
9780134444321
Author:
Tony Gaddis
Publisher:
PEARSON
Digital Fundamentals (11th Edition)
Computer Science
ISBN:
9780132737968
Author:
Thomas L. Floyd
Publisher:
PEARSON
C How to Program (8th Edition)
Computer Science
ISBN:
9780133976892
Author:
Paul J. Deitel, Harvey Deitel
Publisher:
PEARSON
Database Systems: Design, Implementation, & Manag…
Computer Science
ISBN:
9781337627900
Author:
Carlos Coronel, Steven Morris
Publisher:
Cengage Learning
Programmable Logic Controllers
Computer Science
ISBN:
9780073373843
Author:
Frank D. Petruzella
Publisher:
McGraw-Hill Education