Saltar la navegación

Diccionario personalizado para un corrector ortográfico

Supongamos que queremos implementar un corrector ortográfico para escribir correctamente en español. Este diccionario debe contar con miles de palabras y además podrá ser personalizado agregando las palabras que necesite el usuario.

¿Cómo conviene implementarlo? ¿Con un árbol binario de búsqueda o con un AVL?

En este ejemplo, queremos agregar las palabras de la siguiente frase:  "Supongamos que queremos implementar un corrector ortográfico para escribir correctamente en español", ordenadas como están.

Miremos que pasa en los diferentes casos:

Si las palabras se ingresan en un orden casual, la forma del árbol quedará parcialmente balanceado.                                    

Si las palabras se ingresan ordenadas alfabéticamente, la forma del árbol quedará totalmente desbalanceado, se daría el peor de los casos en la formación del árbol. 

Tengamos en cuenta que en el peor de los casos, en un árbol ABB buscar un elemento llevará N comparaciones, mientras que en un AVL, buscar un elemento llevara Log2 (N)