Dada una enorme base de datos de palabras permitidas (ordenadas alfabéticamente) y una palabra, encuentre la palabra de la base de datos que esté más cerca de la palabra dada en términos de distancia de Levenshtein.
El enfoque ingenuo es, por supuesto, simplemente calcular la distancia levenshtein entre la palabra dada y todas las palabras en el diccionario (podemos hacer una búsqueda binaria en la base de datos antes de calcular las distancias).
Me pregunto si hay una solución más eficiente para este problema. Tal vez alguna heurística que nos permita reducir la cantidad de palabras a buscar, u optimizaciones al algoritmo de distancia levenshtein.
Enlaces a documentos sobre el tema de bienvenida.