SlideShare ist ein Scribd-Unternehmen logo
1 von 12
INTRODUCCIÓN
APLICACIONES
PSEUDOCODIGO
IMPLEMENTACIÓN
ESPECIFICACIONES
ALGORITMO
M E N U
EJEMPLO
La distancia de Leveinshtein o también conocida como distancia de edición
, es un algoritmo tal que dadas dos cadenas, devuelve un entero que da una
idea de la distancia (o parecido) entre ellas. La definición de distancia es el
mínimo número de operaciones que hay que realizar para transformar una
cadena en la otra.
Debe su nombre al matemático ruso Vladimir levenshtein .
Este entero se calcula contando las transformaciones que es necesario
hacer sobre una de estas cadenas para obtener la otra.
Estas posibles transformaciones son:
Borrado de un carácter
Inserción de un carácter
Substitución de un carácter por otro
Alfabeto binario= {0,1]
Asignacion de pesos
 Borrado (Pb=1)
por si mismo (Psm=0)
 Sustitucion
por su contrario (Psc=1)
Algunas aplicaciones en la que se puede usar la
distancia de edición son:
Sistemas para la revisión de faltas ortográficas
automatizada en textos.
Sistemas de reconocimiento de voz
Sistemas para el análisis de ADN.
Sistemas para la detección de plagios.
1. Inicio
2. Elegir la palabra que se va a cambiar e insertarla.
3. Insertar la palabra por la que se va a cambiar.
4. Saber cual es la menor cantidad de transacciones
para cambiar una palabra.
5. Identificar el tipo de transacción:
• Insertar una letra
• Quitar una letra
• Cambiar una letra por otra
5. Fin
Escribir “ingrese palabra 1”
Leer palabra
Escribir “ingrese palabra 2”
Leer palabra 2
Longpalabra.longitud()
Long2plabra2.longitud2()
Palabrapalabra.mayusculas()
Palabrapalabra2.mayusculas()
Matriz[long+1][long2+1]
i1
Mientras que i<=long
matriz[0][i]i
ii+1
j1
Mientras que i<=long
i1
mientras i<=long2
si (palabra[j-1]==palabra2[i-1])
matriz[i][j]=menor(matriz[i-1][j-1], matriz[i][j-1], matriz[i-1][j])
si no
matriz[i][j]=menor(matriz[i][j], matriz[i][j-1], matriz[i-1][j])+1
ii+1
jj+1
Escribir “distancia”+carácter(matriz[long2][long])
1.-Pide la primer palabra y la ingresa a una variable llamada palabra
0 1 32 4
2.-Pide la segunda palabra y la ingresa a una variable llamada palabra2
0 1 32
3.-Calcula la longitud de cada una de las palabras con la función len() y las agrega ala
variable correspondiente long y long2
por ejemplo len(palabra)
la longitud de la palabra perro es de 5
4.-crea la matriz donde se realizara las operaciones necesarias para obtener la
distancia
matriz= [[0 for x in xrange(long+1)] for y in xrange(long2+1)]
esto crea eje “x” y asigna el valor de 0 con un rango de long + 1 y
crea el eje “y” y asigna el valor de 0 con un rango de long2+1
p e rr o
g a ot
p e rr o
g
a
o
t
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0
5.- se enumeraran las letras de cada palabra, para eso se utilizo lo siguiente
i=1
while i<=long:
matriz[0][i]=i
i=i+1
i=1
while i<=long2:
matriz[i][0]=i
i=i+1
0 1 2 3 4 5
1 0 0 0 0 0
2 0 0 0 0 0
3 0 0 0 0 0
4 0 0 0 0 0
p e rr o
g
a
o
t
6.- Comienza hacer las operaciones necesarias para obtener la distancia,
para recorrer toda la tabla se utilizaron 2 ciclos anidados como que fue el
while, al entrar al ciclo se compara letra por letra de las 2 palabras, y se
van comparando de 1 en 1, esto lo hace con el siguiente
if(palabra[j-1]==palabra2[i-1]): (se pone “-1” ya que como lo mencione
anteriormente la palabra empieza desde la posición 0 )
en el cual si las letras son iguales, busca el número menor en la matriz, una
posición menos en “x”, una posición menos en “y”, y una posición menos
en “x” y “y”,
Esto se realiza con una función que es min(), que esta te regresa el valor
menor.
matriz[i][j]=min(matriz[i-1][j-1],matriz[i][j-1],matriz[i-1][j])
si las letras no son iguales hace lo mismo que el paso anterior , nada mas que
al número menor le suma un 1
matriz[i][j]=min(matriz[i-1][j-1],matriz[i][j-1],matriz[i-1][j]) + 1
7.- Cuando termina de recorrer toda la tabla y de comparar todas las letras
el resultado que buscamos se guardara en la última posición de “x” y “y” .
0 1 2 3 4 5
1 0 0 0 0 0
2 0 0 0 0 0
3 0 0 0 0 0
4 0 0 0 0 0
p e rr o
g
a
o
t
print "distancia: " +str(matriz[long2][long])
D
I
F
I
F A C I L
0 1 2 3 4 5
1
2
3
4
C
I
L
5
6
7
EJEMPLO
FACILDIFICIL
1 2 3 4 5
2 2 3 3 4
2 3 3 4 4
3 3 4 3 4
4 4 3 4 4
5 5 4 3 4
6 6 5 4 3 RESPUESTA

Weitere ähnliche Inhalte

Was ist angesagt?

Circunferencia trigonometrica
Circunferencia trigonometricaCircunferencia trigonometrica
Circunferencia trigonometricapierjavier
 
Solución Numérica de Ecuaciones no Lineales:Métodos cerrados
Solución Numérica de Ecuaciones no Lineales:Métodos cerradosSolución Numérica de Ecuaciones no Lineales:Métodos cerrados
Solución Numérica de Ecuaciones no Lineales:Métodos cerradosPervys Rengifo
 
Límites y continuidad en funciones de varias variables
Límites y continuidad en funciones de varias variablesLímites y continuidad en funciones de varias variables
Límites y continuidad en funciones de varias variableskellys vz
 
Teoría introduccion a la trigonometria
Teoría introduccion a la trigonometriaTeoría introduccion a la trigonometria
Teoría introduccion a la trigonometriaJuliana Isola
 
Teorema del seno y el coseno
Teorema  del seno y el cosenoTeorema  del seno y el coseno
Teorema del seno y el cosenofrinconr
 
Metodo numerico regla del trapecio
Metodo numerico regla del trapecioMetodo numerico regla del trapecio
Metodo numerico regla del trapecioEvoris Cedeño
 
Funciones vectoriales de una variable real
Funciones vectoriales de una variable realFunciones vectoriales de una variable real
Funciones vectoriales de una variable realNahomi OLiveros
 
Tabla teorema de thales
Tabla teorema de thalesTabla teorema de thales
Tabla teorema de thalesLuis Subiabre
 
Proporcionalidad geométrica
Proporcionalidad geométricaProporcionalidad geométrica
Proporcionalidad geométricamlomute
 
TEOREMA DE WILSON Y TEOREMA PEQUEÑO DE FERMAT
TEOREMA DE WILSON Y TEOREMA PEQUEÑO DE FERMATTEOREMA DE WILSON Y TEOREMA PEQUEÑO DE FERMAT
TEOREMA DE WILSON Y TEOREMA PEQUEÑO DE FERMATLorena Toledo Lizana
 

Was ist angesagt? (20)

Circunferencia trigonometrica
Circunferencia trigonometricaCircunferencia trigonometrica
Circunferencia trigonometrica
 
Solución Numérica de Ecuaciones no Lineales:Métodos cerrados
Solución Numérica de Ecuaciones no Lineales:Métodos cerradosSolución Numérica de Ecuaciones no Lineales:Métodos cerrados
Solución Numérica de Ecuaciones no Lineales:Métodos cerrados
 
Límites y continuidad en funciones de varias variables
Límites y continuidad en funciones de varias variablesLímites y continuidad en funciones de varias variables
Límites y continuidad en funciones de varias variables
 
curvas de nivel y superficies de nivel
curvas de nivel y superficies de nivelcurvas de nivel y superficies de nivel
curvas de nivel y superficies de nivel
 
Teoría introduccion a la trigonometria
Teoría introduccion a la trigonometriaTeoría introduccion a la trigonometria
Teoría introduccion a la trigonometria
 
Teorema del seno y el coseno
Teorema  del seno y el cosenoTeorema  del seno y el coseno
Teorema del seno y el coseno
 
BALANCES_DE_ENERGIA.pdf
BALANCES_DE_ENERGIA.pdfBALANCES_DE_ENERGIA.pdf
BALANCES_DE_ENERGIA.pdf
 
ANGULO DIEDRO
ANGULO DIEDROANGULO DIEDRO
ANGULO DIEDRO
 
Metodo numerico regla del trapecio
Metodo numerico regla del trapecioMetodo numerico regla del trapecio
Metodo numerico regla del trapecio
 
Funciones vectoriales de una variable real
Funciones vectoriales de una variable realFunciones vectoriales de una variable real
Funciones vectoriales de una variable real
 
Tabla teorema de thales
Tabla teorema de thalesTabla teorema de thales
Tabla teorema de thales
 
Proporcionalidad geométrica
Proporcionalidad geométricaProporcionalidad geométrica
Proporcionalidad geométrica
 
PRE CALCULO N°15 ESAN
PRE CALCULO N°15 ESANPRE CALCULO N°15 ESAN
PRE CALCULO N°15 ESAN
 
Ejercicios para repasar
Ejercicios para repasarEjercicios para repasar
Ejercicios para repasar
 
Longitud de una curva
Longitud de una curvaLongitud de una curva
Longitud de una curva
 
TEOREMA DE WILSON Y TEOREMA PEQUEÑO DE FERMAT
TEOREMA DE WILSON Y TEOREMA PEQUEÑO DE FERMATTEOREMA DE WILSON Y TEOREMA PEQUEÑO DE FERMAT
TEOREMA DE WILSON Y TEOREMA PEQUEÑO DE FERMAT
 
Quinto
QuintoQuinto
Quinto
 
Electromagnetismo
ElectromagnetismoElectromagnetismo
Electromagnetismo
 
geometría
geometríageometría
geometría
 
Cuaderno 1
Cuaderno 1Cuaderno 1
Cuaderno 1
 

Andere mochten auch

Distancia de edicion
Distancia de edicion  Distancia de edicion
Distancia de edicion Yajaira Ulloa
 
Conteo de numeros(progresión aritmética)
Conteo de numeros(progresión aritmética)Conteo de numeros(progresión aritmética)
Conteo de numeros(progresión aritmética)JENNER HUAMAN
 
Manual para numerar páginas desde un número de página diferente
Manual para numerar páginas desde un número de página diferenteManual para numerar páginas desde un número de página diferente
Manual para numerar páginas desde un número de página diferenteHinata Akashiya
 
Visual Design with Data
Visual Design with DataVisual Design with Data
Visual Design with DataSeth Familian
 
3 Things Every Sales Team Needs to Be Thinking About in 2017
3 Things Every Sales Team Needs to Be Thinking About in 20173 Things Every Sales Team Needs to Be Thinking About in 2017
3 Things Every Sales Team Needs to Be Thinking About in 2017Drift
 
How to Become a Thought Leader in Your Niche
How to Become a Thought Leader in Your NicheHow to Become a Thought Leader in Your Niche
How to Become a Thought Leader in Your NicheLeslie Samuel
 

Andere mochten auch (6)

Distancia de edicion
Distancia de edicion  Distancia de edicion
Distancia de edicion
 
Conteo de numeros(progresión aritmética)
Conteo de numeros(progresión aritmética)Conteo de numeros(progresión aritmética)
Conteo de numeros(progresión aritmética)
 
Manual para numerar páginas desde un número de página diferente
Manual para numerar páginas desde un número de página diferenteManual para numerar páginas desde un número de página diferente
Manual para numerar páginas desde un número de página diferente
 
Visual Design with Data
Visual Design with DataVisual Design with Data
Visual Design with Data
 
3 Things Every Sales Team Needs to Be Thinking About in 2017
3 Things Every Sales Team Needs to Be Thinking About in 20173 Things Every Sales Team Needs to Be Thinking About in 2017
3 Things Every Sales Team Needs to Be Thinking About in 2017
 
How to Become a Thought Leader in Your Niche
How to Become a Thought Leader in Your NicheHow to Become a Thought Leader in Your Niche
How to Become a Thought Leader in Your Niche
 

Ähnlich wie Distancia de Levenshtein

Ähnlich wie Distancia de Levenshtein (20)

Levenshtein (2)
Levenshtein (2)Levenshtein (2)
Levenshtein (2)
 
LENGUAJES DE PROGRAMACIÓN
LENGUAJES DE PROGRAMACIÓNLENGUAJES DE PROGRAMACIÓN
LENGUAJES DE PROGRAMACIÓN
 
LENGUAJES DE PROGRAMACIÓN
LENGUAJES DE PROGRAMACIÓNLENGUAJES DE PROGRAMACIÓN
LENGUAJES DE PROGRAMACIÓN
 
Levenshtein (2)
Levenshtein (2)Levenshtein (2)
Levenshtein (2)
 
Tercera presentación
Tercera presentaciónTercera presentación
Tercera presentación
 
Distancia de edicion(2)
Distancia de edicion(2)Distancia de edicion(2)
Distancia de edicion(2)
 
Distancia de edicion
Distancia de edicionDistancia de edicion
Distancia de edicion
 
Ecuaciones def sistema
Ecuaciones def sistemaEcuaciones def sistema
Ecuaciones def sistema
 
Distancia de edición
Distancia de ediciónDistancia de edición
Distancia de edición
 
Solución de sistemas de ecuaciones lineales
Solución de sistemas de ecuaciones linealesSolución de sistemas de ecuaciones lineales
Solución de sistemas de ecuaciones lineales
 
Ads matlab
Ads matlabAds matlab
Ads matlab
 
Unidad_III_Interpolacion.pdf
Unidad_III_Interpolacion.pdfUnidad_III_Interpolacion.pdf
Unidad_III_Interpolacion.pdf
 
GUIA DE FUNCIONES.pdf
GUIA DE FUNCIONES.pdfGUIA DE FUNCIONES.pdf
GUIA DE FUNCIONES.pdf
 
Informe
InformeInforme
Informe
 
Determinantes tarea
Determinantes tareaDeterminantes tarea
Determinantes tarea
 
Luis moncada
Luis moncadaLuis moncada
Luis moncada
 
Python
PythonPython
Python
 
Sistemas de ecuaciones lineales y matrices
Sistemas de ecuaciones lineales y matricesSistemas de ecuaciones lineales y matrices
Sistemas de ecuaciones lineales y matrices
 
Notas sobre derivadas
Notas sobre derivadasNotas sobre derivadas
Notas sobre derivadas
 
Power logaritmos
Power logaritmos Power logaritmos
Power logaritmos
 

Mehr von Blanca Rodríguez (20)

Proyecto final
Proyecto finalProyecto final
Proyecto final
 
Fase4
Fase4Fase4
Fase4
 
Adaptativos
AdaptativosAdaptativos
Adaptativos
 
Interfaz Gráfica
Interfaz GráficaInterfaz Gráfica
Interfaz Gráfica
 
Prefinal
PrefinalPrefinal
Prefinal
 
Proyecto
ProyectoProyecto
Proyecto
 
Catalan
CatalanCatalan
Catalan
 
Catalan
CatalanCatalan
Catalan
 
Google apps engine
Google apps engineGoogle apps engine
Google apps engine
 
Prolog
PrologProlog
Prolog
 
Palíndromo.ppt
 Palíndromo.ppt  Palíndromo.ppt
Palíndromo.ppt
 
Palíndromo.ppt
 Palíndromo.ppt  Palíndromo.ppt
Palíndromo.ppt
 
Logico1
Logico1Logico1
Logico1
 
Logico1
Logico1Logico1
Logico1
 
Caballos
CaballosCaballos
Caballos
 
Caballos
CaballosCaballos
Caballos
 
Código intermedio
Código intermedioCódigo intermedio
Código intermedio
 
Catalan
CatalanCatalan
Catalan
 
Catalan
CatalanCatalan
Catalan
 
Catalan
CatalanCatalan
Catalan
 

Kürzlich hochgeladen

Prueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESOPrueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESOluismii249
 
Biografía de Charles Coulomb física .pdf
Biografía de Charles Coulomb física .pdfBiografía de Charles Coulomb física .pdf
Biografía de Charles Coulomb física .pdfGruberACaraballo
 
AEC 2. Aventura en el Antiguo Egipto.pptx
AEC 2. Aventura en el Antiguo Egipto.pptxAEC 2. Aventura en el Antiguo Egipto.pptx
AEC 2. Aventura en el Antiguo Egipto.pptxhenarfdez
 
CONCURSO NACIONAL JOSE MARIA ARGUEDAS.pptx
CONCURSO NACIONAL JOSE MARIA ARGUEDAS.pptxCONCURSO NACIONAL JOSE MARIA ARGUEDAS.pptx
CONCURSO NACIONAL JOSE MARIA ARGUEDAS.pptxroberthirigoinvasque
 
Prueba de evaluación Geografía e Historia Comunidad de Madrid 2º de la ESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 2º de la ESOPrueba de evaluación Geografía e Historia Comunidad de Madrid 2º de la ESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 2º de la ESOluismii249
 
La Evaluacion Formativa SM6 Ccesa007.pdf
La Evaluacion Formativa SM6  Ccesa007.pdfLa Evaluacion Formativa SM6  Ccesa007.pdf
La Evaluacion Formativa SM6 Ccesa007.pdfDemetrio Ccesa Rayme
 
PLAN DE REFUERZO ESCOLAR MERC 2024-2.docx
PLAN DE REFUERZO ESCOLAR MERC 2024-2.docxPLAN DE REFUERZO ESCOLAR MERC 2024-2.docx
PLAN DE REFUERZO ESCOLAR MERC 2024-2.docxiemerc2024
 
PINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).ppt
PINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).pptPINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).ppt
PINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).pptAlberto Rubio
 
Posición astronómica y geográfica de Europa.pptx
Posición astronómica y geográfica de Europa.pptxPosición astronómica y geográfica de Europa.pptx
Posición astronómica y geográfica de Europa.pptxBeatrizQuijano2
 
prostitución en España: una mirada integral!
prostitución en España: una mirada integral!prostitución en España: una mirada integral!
prostitución en España: una mirada integral!CatalinaAlfaroChryso
 
TEMA 14.DERIVACIONES ECONÓMICAS, SOCIALES Y POLÍTICAS DEL PROCESO DE INTEGRAC...
TEMA 14.DERIVACIONES ECONÓMICAS, SOCIALES Y POLÍTICAS DEL PROCESO DE INTEGRAC...TEMA 14.DERIVACIONES ECONÓMICAS, SOCIALES Y POLÍTICAS DEL PROCESO DE INTEGRAC...
TEMA 14.DERIVACIONES ECONÓMICAS, SOCIALES Y POLÍTICAS DEL PROCESO DE INTEGRAC...jlorentemartos
 
1ro Programación Anual D.P.C.C planificación anual del área para el desarroll...
1ro Programación Anual D.P.C.C planificación anual del área para el desarroll...1ro Programación Anual D.P.C.C planificación anual del área para el desarroll...
1ro Programación Anual D.P.C.C planificación anual del área para el desarroll...JoseMartinMalpartida1
 
6°_GRADO_-_MAYO_06 para sexto grado de primaria
6°_GRADO_-_MAYO_06 para sexto grado de primaria6°_GRADO_-_MAYO_06 para sexto grado de primaria
6°_GRADO_-_MAYO_06 para sexto grado de primariaWilian24
 
Los avatares para el juego dramático en entornos virtuales
Los avatares para el juego dramático en entornos virtualesLos avatares para el juego dramático en entornos virtuales
Los avatares para el juego dramático en entornos virtualesMarisolMartinez707897
 
Plan-de-la-Patria-2019-2025- TERCER PLAN SOCIALISTA DE LA NACIÓN.pdf
Plan-de-la-Patria-2019-2025- TERCER PLAN SOCIALISTA DE LA NACIÓN.pdfPlan-de-la-Patria-2019-2025- TERCER PLAN SOCIALISTA DE LA NACIÓN.pdf
Plan-de-la-Patria-2019-2025- TERCER PLAN SOCIALISTA DE LA NACIÓN.pdfcarolinamartinezsev
 

Kürzlich hochgeladen (20)

Prueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESOPrueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESO
 
Biografía de Charles Coulomb física .pdf
Biografía de Charles Coulomb física .pdfBiografía de Charles Coulomb física .pdf
Biografía de Charles Coulomb física .pdf
 
AEC 2. Aventura en el Antiguo Egipto.pptx
AEC 2. Aventura en el Antiguo Egipto.pptxAEC 2. Aventura en el Antiguo Egipto.pptx
AEC 2. Aventura en el Antiguo Egipto.pptx
 
CONCURSO NACIONAL JOSE MARIA ARGUEDAS.pptx
CONCURSO NACIONAL JOSE MARIA ARGUEDAS.pptxCONCURSO NACIONAL JOSE MARIA ARGUEDAS.pptx
CONCURSO NACIONAL JOSE MARIA ARGUEDAS.pptx
 
Prueba de evaluación Geografía e Historia Comunidad de Madrid 2º de la ESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 2º de la ESOPrueba de evaluación Geografía e Historia Comunidad de Madrid 2º de la ESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 2º de la ESO
 
La Evaluacion Formativa SM6 Ccesa007.pdf
La Evaluacion Formativa SM6  Ccesa007.pdfLa Evaluacion Formativa SM6  Ccesa007.pdf
La Evaluacion Formativa SM6 Ccesa007.pdf
 
PLAN DE REFUERZO ESCOLAR MERC 2024-2.docx
PLAN DE REFUERZO ESCOLAR MERC 2024-2.docxPLAN DE REFUERZO ESCOLAR MERC 2024-2.docx
PLAN DE REFUERZO ESCOLAR MERC 2024-2.docx
 
PINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).ppt
PINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).pptPINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).ppt
PINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).ppt
 
Posición astronómica y geográfica de Europa.pptx
Posición astronómica y geográfica de Europa.pptxPosición astronómica y geográfica de Europa.pptx
Posición astronómica y geográfica de Europa.pptx
 
prostitución en España: una mirada integral!
prostitución en España: una mirada integral!prostitución en España: una mirada integral!
prostitución en España: una mirada integral!
 
Interpretación de cortes geológicos 2024
Interpretación de cortes geológicos 2024Interpretación de cortes geológicos 2024
Interpretación de cortes geológicos 2024
 
Lecciones 06 Esc. Sabática. Los dos testigos
Lecciones 06 Esc. Sabática. Los dos testigosLecciones 06 Esc. Sabática. Los dos testigos
Lecciones 06 Esc. Sabática. Los dos testigos
 
TEMA 14.DERIVACIONES ECONÓMICAS, SOCIALES Y POLÍTICAS DEL PROCESO DE INTEGRAC...
TEMA 14.DERIVACIONES ECONÓMICAS, SOCIALES Y POLÍTICAS DEL PROCESO DE INTEGRAC...TEMA 14.DERIVACIONES ECONÓMICAS, SOCIALES Y POLÍTICAS DEL PROCESO DE INTEGRAC...
TEMA 14.DERIVACIONES ECONÓMICAS, SOCIALES Y POLÍTICAS DEL PROCESO DE INTEGRAC...
 
PP_Comunicacion en Salud: Objetivación de signos y síntomas
PP_Comunicacion en Salud: Objetivación de signos y síntomasPP_Comunicacion en Salud: Objetivación de signos y síntomas
PP_Comunicacion en Salud: Objetivación de signos y síntomas
 
Tema 11. Dinámica de la hidrosfera 2024
Tema 11.  Dinámica de la hidrosfera 2024Tema 11.  Dinámica de la hidrosfera 2024
Tema 11. Dinámica de la hidrosfera 2024
 
1ro Programación Anual D.P.C.C planificación anual del área para el desarroll...
1ro Programación Anual D.P.C.C planificación anual del área para el desarroll...1ro Programación Anual D.P.C.C planificación anual del área para el desarroll...
1ro Programación Anual D.P.C.C planificación anual del área para el desarroll...
 
6°_GRADO_-_MAYO_06 para sexto grado de primaria
6°_GRADO_-_MAYO_06 para sexto grado de primaria6°_GRADO_-_MAYO_06 para sexto grado de primaria
6°_GRADO_-_MAYO_06 para sexto grado de primaria
 
Los avatares para el juego dramático en entornos virtuales
Los avatares para el juego dramático en entornos virtualesLos avatares para el juego dramático en entornos virtuales
Los avatares para el juego dramático en entornos virtuales
 
Usos y desusos de la inteligencia artificial en revistas científicas
Usos y desusos de la inteligencia artificial en revistas científicasUsos y desusos de la inteligencia artificial en revistas científicas
Usos y desusos de la inteligencia artificial en revistas científicas
 
Plan-de-la-Patria-2019-2025- TERCER PLAN SOCIALISTA DE LA NACIÓN.pdf
Plan-de-la-Patria-2019-2025- TERCER PLAN SOCIALISTA DE LA NACIÓN.pdfPlan-de-la-Patria-2019-2025- TERCER PLAN SOCIALISTA DE LA NACIÓN.pdf
Plan-de-la-Patria-2019-2025- TERCER PLAN SOCIALISTA DE LA NACIÓN.pdf
 

Distancia de Levenshtein

  • 2. La distancia de Leveinshtein o también conocida como distancia de edición , es un algoritmo tal que dadas dos cadenas, devuelve un entero que da una idea de la distancia (o parecido) entre ellas. La definición de distancia es el mínimo número de operaciones que hay que realizar para transformar una cadena en la otra. Debe su nombre al matemático ruso Vladimir levenshtein . Este entero se calcula contando las transformaciones que es necesario hacer sobre una de estas cadenas para obtener la otra. Estas posibles transformaciones son: Borrado de un carácter Inserción de un carácter Substitución de un carácter por otro
  • 3. Alfabeto binario= {0,1] Asignacion de pesos  Borrado (Pb=1) por si mismo (Psm=0)  Sustitucion por su contrario (Psc=1)
  • 4. Algunas aplicaciones en la que se puede usar la distancia de edición son: Sistemas para la revisión de faltas ortográficas automatizada en textos. Sistemas de reconocimiento de voz Sistemas para el análisis de ADN. Sistemas para la detección de plagios.
  • 5. 1. Inicio 2. Elegir la palabra que se va a cambiar e insertarla. 3. Insertar la palabra por la que se va a cambiar. 4. Saber cual es la menor cantidad de transacciones para cambiar una palabra. 5. Identificar el tipo de transacción: • Insertar una letra • Quitar una letra • Cambiar una letra por otra 5. Fin
  • 6. Escribir “ingrese palabra 1” Leer palabra Escribir “ingrese palabra 2” Leer palabra 2 Longpalabra.longitud() Long2plabra2.longitud2() Palabrapalabra.mayusculas() Palabrapalabra2.mayusculas() Matriz[long+1][long2+1] i1 Mientras que i<=long matriz[0][i]i ii+1
  • 7. j1 Mientras que i<=long i1 mientras i<=long2 si (palabra[j-1]==palabra2[i-1]) matriz[i][j]=menor(matriz[i-1][j-1], matriz[i][j-1], matriz[i-1][j]) si no matriz[i][j]=menor(matriz[i][j], matriz[i][j-1], matriz[i-1][j])+1 ii+1 jj+1 Escribir “distancia”+carácter(matriz[long2][long])
  • 8. 1.-Pide la primer palabra y la ingresa a una variable llamada palabra 0 1 32 4 2.-Pide la segunda palabra y la ingresa a una variable llamada palabra2 0 1 32 3.-Calcula la longitud de cada una de las palabras con la función len() y las agrega ala variable correspondiente long y long2 por ejemplo len(palabra) la longitud de la palabra perro es de 5 4.-crea la matriz donde se realizara las operaciones necesarias para obtener la distancia matriz= [[0 for x in xrange(long+1)] for y in xrange(long2+1)] esto crea eje “x” y asigna el valor de 0 con un rango de long + 1 y crea el eje “y” y asigna el valor de 0 con un rango de long2+1 p e rr o g a ot
  • 9. p e rr o g a o t 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 5.- se enumeraran las letras de cada palabra, para eso se utilizo lo siguiente i=1 while i<=long: matriz[0][i]=i i=i+1 i=1 while i<=long2: matriz[i][0]=i i=i+1 0 1 2 3 4 5 1 0 0 0 0 0 2 0 0 0 0 0 3 0 0 0 0 0 4 0 0 0 0 0 p e rr o g a o t
  • 10. 6.- Comienza hacer las operaciones necesarias para obtener la distancia, para recorrer toda la tabla se utilizaron 2 ciclos anidados como que fue el while, al entrar al ciclo se compara letra por letra de las 2 palabras, y se van comparando de 1 en 1, esto lo hace con el siguiente if(palabra[j-1]==palabra2[i-1]): (se pone “-1” ya que como lo mencione anteriormente la palabra empieza desde la posición 0 ) en el cual si las letras son iguales, busca el número menor en la matriz, una posición menos en “x”, una posición menos en “y”, y una posición menos en “x” y “y”, Esto se realiza con una función que es min(), que esta te regresa el valor menor. matriz[i][j]=min(matriz[i-1][j-1],matriz[i][j-1],matriz[i-1][j])
  • 11. si las letras no son iguales hace lo mismo que el paso anterior , nada mas que al número menor le suma un 1 matriz[i][j]=min(matriz[i-1][j-1],matriz[i][j-1],matriz[i-1][j]) + 1 7.- Cuando termina de recorrer toda la tabla y de comparar todas las letras el resultado que buscamos se guardara en la última posición de “x” y “y” . 0 1 2 3 4 5 1 0 0 0 0 0 2 0 0 0 0 0 3 0 0 0 0 0 4 0 0 0 0 0 p e rr o g a o t print "distancia: " +str(matriz[long2][long])
  • 12. D I F I F A C I L 0 1 2 3 4 5 1 2 3 4 C I L 5 6 7 EJEMPLO FACILDIFICIL 1 2 3 4 5 2 2 3 3 4 2 3 3 4 4 3 3 4 3 4 4 4 3 4 4 5 5 4 3 4 6 6 5 4 3 RESPUESTA