Explicación
La distancia de edición entre dos cadenas es una función del número mínimo posible de inserciones, eliminaciones o sustituciones para convertir una palabra en otra.
Las inserciones y eliminaciones cuestan 1 y las sustituciones cuestan 2.
Por ejemplo, la distancia entre AB
y A
es 1, porque las eliminaciones cuestan 1 y la única edición necesaria es la eliminación del B
carácter.
La distancia entre CAR
y FAR
es 2, porque las sustituciones cuestan 2. Otra forma de ver esto es una eliminación y una inserción.
Reglas
Dadas dos cadenas de entrada (proporcionadas, sin embargo, es conveniente en su idioma), su programa debe encontrar la distancia mínima de edición entre las dos cadenas.
Puede suponer que las cadenas solo contienen los caracteres A-Z
y tienen menos de 100 caracteres y más de 0 caracteres.
Este es el código de golf , por lo que gana la solución más corta.
Ejemplos de casos de prueba
ISLANDER, SLANDER
> 1
MART, KARMA
> 5
KITTEN, SITTING
> 5
INTENTION, EXECUTION
> 8
levenshtein
función integrada trata las sustituciones como una edición (sustituto), no dos (eliminar + insertar).