Я о том, чтобы создать «умный» словарь, который может генерировать подобные слова, если слово от пользователя не в словаре.
Словарь начинается с чтением файла со словами, слово должно быть добавлено к бинарному дереву и хэш-таблице. Хэш-таблица используется для определения, если слово или подобное слово в словаре, хэш-таблица будет иметь логическое действие, чтобы мы могли быстро посмотреть, если бинарное дерево поиска содержит слово. Хэш-таблица должна быть примерно в десять раз больше длины нашего словаря, потому что мы также включают в себя аналогичные слова в хэш-таблице. Как относительно новый для Java, я хотел бы советы и рекомендации о том, как сделать хэш-функцию, которая будет идеально подходят для моей ситуации.
public String [] similarOne(String word) {
char [] word_array = word.toCharArray();
char [] tmp;
String [] words = new String[word_array.length-1];
for(int i = 0; i < word_array.length - 1; i++) {
tmp = word_array.clone();
words[i] = swap(i, i+1, tmp);
}
return words;
}
public String swap(int a, int b, char [] word) {
char tmp = word[a];
word[a] = word[b];
word[b] = tmp;
return new String(word);
}













