La creación de diccionario con árbol de búsqueda binario y hash

votos
1

Estoy a punto de crear un diccionario inteligente que podría generar palabras similares si la palabra del usuario no está en el diccionario.

El diccionario comienza con la lectura de un archivo con la palabra, la palabra debe añadirse al árbol binario y una tabla hash. La tabla hash se utiliza para determinar si la palabra o palabra similar se encuentra en el diccionario, la tabla hash tendrá un efecto de Boole para que podamos mirar rápidamente si el árbol de búsqueda binario contiene la palabra. La tabla hash tiene que ser alrededor de diez veces la longitud de nuestro diccionario, ya que también incluyen palabras similar a la tabla hash. Como relativamente nuevo en Java, me gustaría consejos y sugerencias sobre cómo hacer una función hash que sería ideal para mi situación.

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);
}
Publicado el 28/09/2010 a las 16:44
fuente por usuario
En otros idiomas...                            


2 respuestas

votos
0

Google para 'java metaphone' y 'soundex java'.

Usted podría tratar de usar los resultados de un Metaphone codificación que la clave hash, por ejemplo.

Respondida el 28/09/2010 a las 17:24
fuente por usuario

votos
0

Sugiero que se debe utilizar un Trie o Patricia-trie .I no sabe lo que quiere decir con words.But similares supongo que es algo así como Google han suggest.I escribió un pequeño programa con anterioridad, que hace la función de autocompletar. que tiene una dependencia con Patricia-trie así tendrá que incluir it.You puede utilizar como referencia.

Respondida el 29/09/2010 a las 06:18
fuente por usuario

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more