Sunt pe cale de a crea un dicționar „inteligent“, care ar putea genera cuvinte similare în cazul în care cuvântul de la utilizator care nu se află în dicționar.
Dicționarul începe cu citirea unui fișier cu cuvinte, trebuie adăugat cuvântul la arborele binar și un tabel hash. Tabelul de distribuire este utilizat pentru a determina dacă cuvântul sau cuvântul similar este în dicționar, tabelul hash va avea un efect boolean astfel încât să putem uita rapid în cazul în care arborele binar de căutare conține cuvântul. Tabelul hash trebuie să fie în jurul valorii de zece ori mai mare decât lungimea dicționarul nostru, pentru că ne include și cuvinte similare cu tabelul hash. Ca relativ nou pentru Java, aș dori sfaturi și sugestii privind modul de a face o funcție hash care ar fi ideal pentru situația mea.
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);
}













