/* HashTableChained.java */ import DataStructures.*; import Supporting.*; import Exceptions.*; import list.*; /** This class implements a HashTable with chaining. */ public class HashTableChained implements HashTable { /** * Construct a new hash table intended to hold * roughly sizeEstimate elements. */ public HashTableChained (int sizeEstimate) { // FILL IN } /** * Construct a new hash table with a default size. */ public HashTableChained () { // FILL IN } /** * Insert into the hash table. If the item is * already present, then replace it with the new item. * @param x the item to insert. */ public void insert( Hashable x ) { // FILL IN } /** * Remove from the hash table. * @param x the item to remove. * @exception ItemNotFound if no item * that matches x can be found in the hash table. */ public void remove( Hashable x ) throws ItemNotFound { // FILL IN } /** * Find an item in the hash table. * @param x the item to search for. * @return the matching item. * @exception ItemNotFound if no item * that matches x can be found in the hash table. */ public Hashable find( Hashable x ) throws ItemNotFound { // FILL IN, REPLACING LINE BELOW return null; } /** * Make the hash table logically empty. */ public void makeEmpty( ) { // FILL IN } // Add data fields and any additional methods here. }