Question: Java programing using eclipse. HashTable.java: import java.util.*; public class HashTable { final int CAPACITY = 23; // capacity of hash table ArrayList > h ;
Java programing using eclipse. 
HashTable.java:
import java.util.*;
public class HashTable { final int CAPACITY = 23; // capacity of hash table ArrayList> h ; // array of lists int size; // number of items in hash table int capacity; // capacity of hash table
public HashTable( ) // POST: empty table of CAPACITY with empty LinkedList objects { capacity = CAPACITY; size = 0; h = new ArrayList > () ; for (int k=0; k ( )); } public HashTable(int cap) // PRE: cap > 0 { // POST: empty table of capacity cap with empty LinkedList objects capacity = cap; size = 0; h = new ArrayList > (capacity) ; for (int k=0; k ( )); size = 0; } public boolean isPresent(String target) // PRE: table is not empty { // POST: return true if target is in table; else false int index = hash(target); if (h.get(index).contains(target)) return true; else return false; } boolean isEmpty ( ) // POST: return true if table is empty { return size == 0; } public void insert (String word) // POST: if not found, add word to hash table { int index = hash(word); LinkedList temp = h.get(index); if (!temp.contains(word)) { temp.add(word); h.set(index, temp); size++; } } public String toString () // POST: return words as a string { String result = ""; for (int k = 0; k
jumbledwords.txt link below. (the link is a google docs link, just copy and paste all words into a txt file named jumbledwords.txt)
https://docs.google.com/document/d/1w_ZbZ-vEi95Jv_VFHjQn-yORW4Do_qj3tNogNkLb7iw/edit?usp=sharing
#3 (70) This problem uses a HashTable class to store a dictionary File HashTable.java is available on First Class. It is the same hashtable class studied in lecture with the addition of a parameterized constructor so the client can set the initial capacity. Add methods get Capacity and getClusterLength to the class to get the capacity of the hashtable and the length ofth cluster at an index. Two hash functions are included using two different algorithms, Text file jumbledwords.txt contains about 20,000 words. Write a main method to load the words from the text file into the hash table of capacity 1009. Code should use the File, BufferedReader and StringTokenizer classes versus Scanner class to practice with these new classes. If the file does not exist, the program should report the problem and end otherwise do the input and report the input completed successfully. Write the length of each cluster to a text file using the File class. Complete the analysis below two times. There are two hash functions listed in the class for you to compare and you will find a third one Your goal is to note differences in performance and compare results. Import the output file of cluster length data into Excel and compute the standard deviation. (STDEV S) Produce a line chart in Excel that plots the cluster sizes. Include a chart title stating which hash function was used (1,2, or 3 and the standard deviation). Ifanyone needs help with Excel, stop by to see me, it will take only a few minutes to show you. Print the Excel chart. Write a paragraph on the chart describing the distribution that you see. What does the standard deviation tell you? Do you think this is an adequate hash function for this data set? Why or wh not? Research a different hash function and write a short report listing the algorithm, cite its source, and hand-trace the algorithm on a sample word. Repeat the process above on your new hash function. Turn in your main class and the three Excel charts with their analyses and your document