Question: Question No. 3 [10 Marks) We wish to build a Hash Table, which is able to deal with collision by using linear and quadratic probing.


Question No. 3 [10 Marks) We wish to build a Hash Table, which is able to deal with collision by using linear and quadratic probing. Please write a public class HashLinQuad as follows: public class HashLinQuad { private int[] table;//hash table private int size; //current number of elements private int capacity //capacity of the hash table private HashLinQuad (int size){ table = new int[size]; } public int addLin (int obj) { ... //add obj into table using linear probing } public int addQuad (int obj){ ... //add obj into table using quadratic probing } } 1. Implement the two methods addLin and addQuad that apply linear and quadratic probing, respectively. 2. Test your implemented methods addLin and addQuad. To this end, create the following two objects in class Main : HashLinQuad linHashTable = new HashLinQuad(1249); HashLinQuad quad HashTable = new HashLinQuad(1249); 3. Please insert the same 1000 random integer values (in the same order) into: a. the object 'linHashTable by using the method 'addlin' and count the number of collisions. b. the object quad HashTable' by using the method 'addQuad' and count the number of collisions. 4. According to the results, compare and discuss both collision resolution strategies as a comment in your implementation (e.g., directly below the lines above)
Step by Step Solution
There are 3 Steps involved in it
Get step-by-step solutions from verified subject matter experts
