Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

Two hash tables should be implemented in Java. Follow the following instructions: - In class HashTable implement a hash table and consider the following: (i)

Two hash tables should be implemented in Java.

Follow the following instructions: - In class HashTable implement a hash table and consider the following:

(i) Keys are integers (therefore also negative!) and should be stored in the table int[] data.

(ii) As a hash function take h(x) = (x 701) mod 2000. The size of the table is therefore 2000. Be careful when computing the index of a negative key. For example, the index of the key x = 10 is h(10) = (7010) mod 2000 = (2000(4) + 990) mod 2000 = 990. Hence, indices should be non-negative integers between 0 and 1999!

(iii) Implement insert, which takes an integer and inserts it into a table. The method returns true, if the insertion is successful. If an element is already in the table, the function insert should return false.

(iv) Implement search, which takes an integer and finds it in the table. The method returns true, if the search is successful and false otherwise.

(v) Implement delete, which takes an integer and deletes it form the table. The method returns true, if the deletion is successful and false otherwise.

(vi) Collision should be solved by chaining. However, not as usually by linked list, but with a hash table implemented in class HashTable2 (combined structure).

- In class HashTable2 implement a hash table and consider the following:

(i) Keys are integers (therefore also negative!) and should be stored in the table int[] data.

(ii) As a hash function take h(x) = (x53) mod 100. The size of the table is therefore 100. As above be careful to compute the index of a negative key correctly. In this case indices should be non-negative integers between 0 and 99!

(iii) Implement insert, which takes an integer and inserts it into a table. The method returns true, if the insertion is successful. If an element is already in the table, the function insert should return false. When inserting an element into a full table, the function insert should return false.

(iv) Implement search, which takes an integer and finds it in the table. The method returns true, if the search is successful and false otherwise.

(v) Implement delete, which takes an integer and deletes it form the table. The method returns true, if the deletion is successful and false otherwise. 3

(vi) Collision should be solved by open-addressing with linear probing. Be careful when deleting an element. You need a special character to indicate that the element was deleted so that the function search will work correctly.

Also, be careful when inserting new element, since it can be inserted into the place indicated with the special character.

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access to Expert-Tailored Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image

Step: 3

blur-text-image

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Recommended Textbook for

Objects And Databases International Symposium Sophia Antipolis France June 13 2000 Revised Papers Lncs 1944

Authors: Klaus R. Dittrich ,Giovanna Guerrini ,Isabella Merlo ,Marta Oliva ,M. Elena Rodriguez

2001st Edition

3540416641, 978-3540416647

More Books

Students also viewed these Databases questions

Question

1-4 How will MIS help my career?

Answered: 1 week ago