Assume the following input for your program:
Brighton 00101101
Downtown 10100011
Downtown 10100011
Mianus 110001111
Perryridge 1110001
Perryridge 1110001
Perryridge 1110001
Redwood 00110101
RoundHill 11011000
Brighton 00101101
Downtown 10100011
Downtown 10100011
Mianus 110001111
Perryridge 1110001
Perryridge 1110001
Perryridge 1110001
Redwood 00110101
RoundHill 11011000
- In this program you can use the second data as the hash key and your hash fuction (based on a prefixing) can use it.
- Assume the size of the buckets to be 2 elements and in addition to dynamic hashing allow overflow buckets for cases where you have more than 2 elements with the same key (e.g. perryrige).
- At the end, report the access performance for the hash by calculating the total time needed to access the elements in the datastructure.(costs: Each link traverse =1, and for the second node in a bucket, consider an additional cost =1 compared to the first node and for the third one consider another extra =1 (i.e. link list item) and .... .
-Your program should also output the bucket address entries for all after it has finished the job. E.g. for the limited data in Fig 12.31 in handout we will have:
[1] Brighton, Redwood
[2] Brighton, Redwood
[3] Brighton, Redwood
[4] Brighton, Redwood
[5] Downtown, Downtown
[6] Downtown, Downtown
[7] Minaus, RoundHill
[8] Minaus, RoundHill
[9] Perryridge, Perryridge, Perriridge
Note that your program has twice the input.
## Deliverables
1) Complete and fully-functional working program(s) in executable form as well as complete source code of all work done. Note: Program source MUST be C++!
2) Deliverables must be in ready-to-run condition, as follows (depending on the nature of the deliverables):
a) For web sites or other server-side deliverables intended to only ever exist in one place in the Buyer's environment--Deliverables must be installed by the Seller in ready-to-run condition in the Buyer's environment.
b) For all others including desktop software or software the buyer intends to distribute: A software installation package that will install the software in ready-to-run condition on the platform(s) specified in this bid request.
3) All deliverables will be considered "work made for hire" under U.S. Copyright law. Buyer will receive exclusive and complete copyrights to all work purchased. (No GPL, GNU, 3rd party components, etc. unless all copyright ramifications are explained AND AGREED TO by the buyer on the site per the coder's Seller Legal Agreement).
## Platform
Linux