Я нахожусь в классе структур данных, и у нас есть назначение, которое включает в себя создание хеш-таблицы для латинского словаря и метода getDefinition в классе LatinDictionary (в основном, обертка), который запрашивает строку после вводастрока вроде так ...
import java.util.Iterator;
import data_structures.*;
public class LatinDictionary {
private DictionaryADT<String,String> dictionary;
private int maxSize = DictionaryReader.entries.length;
....
public String getDefinition(String latinWord) {
return dictionary.getValue(latinWord);
}
Метод getValue выглядит следующим образом:
package data_structures;
import java.util.Iterator;
public class HashTable <K,V> implements DictionaryADT<K,V>{
private int maxSize,currentSize,tableSize;
private UnorderedList<DictionaryNode<K,V>>[] list;
DictionaryADT<String, String> dictionary;
...
public V getValue(K key){
int code = hashCode((String)key);
DictionaryNode temp = new DictionaryNode(key,null);
if(!list[code].contains(temp))return null;
DictionaryNode temp2 = new DictionaryNode(null, list[code].find(temp));
return (V) temp2.value;
}
, а метод поиска из класса неупорядоченного списка выглядит следующим образом:
package data_structures;
import java.util.Iterator;
import java.util.NoSuchElementException;
public class UnorderedList<E> implements Iterable<E>{
public E find(E object) {
Node<E> current=head;
Node<E> previous = head;
Node<E> temp=null;
while(current!=null && ((Comparable<E>)object).compareTo((current.data))!=0){
previous=current;
current=current.next;
temp=current;
}
return temp.data;
}
DictionaryADT - это предоставляемый интерфейс, а спецификация состоит в том, что LatinDictionary будет ссылаться только на объект ADT, а не на саму хеш-таблицу.Кроме того, я не могу импортировать java.util. *.
Независимо от того, что я пытаюсь, я получаю ошибку "не могу привести" или что-то еще, в зависимости от того, что я пытаюсь, но я не вижу, как добраться от V дострока.К сожалению, я не могу найти НИЧЕГО в Интернете, касающегося самодельных хеш-таблиц, не говоря уже о той реализации, которую я должен использовать здесь.Все, что связано с хэш-таблицами, использует встроенную версию, а не написанную самостоятельно, что не очень полезно.У меня есть этот проект примерно через 2 недели, но есть еще 3 реализации после этого!Любая помощь очень ценится.Спасибо.