Cadenas de Caracteres y Emparejamiento de Patrones - PowerPoint PPT Presentation

About This Presentation
Title:

Cadenas de Caracteres y Emparejamiento de Patrones

Description:

El objetivo de b squeda en cadenas es hallar la localizaci n de ... Peor caso: compara el patr n con cada subcadena de texto de longitud M. Complejidad: O(MN) ... – PowerPoint PPT presentation

Number of Views:328
Avg rating:3.0/5.0
Slides: 9
Provided by: pedroco7
Category:

less

Transcript and Presenter's Notes

Title: Cadenas de Caracteres y Emparejamiento de Patrones


1
Cadenas de Caracteres y Emparejamiento de Patrones
  • Fuerza Bruta
  • Rabin-Karp
  • Knuth-Morris-Pratt
  • Tries

2
Búsqueda de cadenas
  • El objetivo de búsqueda en cadenas es hallar la
    localización de un patrón de texto específico
    dentro de un texto largo (e.g., una oración, un
    parráfo, un libro, etc.).
  • Los requisitos son velocidad y eficiencia.
  • Hay un gran número de algoritmos para esto, entre
    los cuales están Fuerza Bruta,Rabin-Karp, y
    Knuth-Morris-Pratt.

3
Fuerza Bruta
  • El algoritmo de Fuerza Bruta compara el patrón
    con el texto un caracter cada vez, hasta
    encontrar que no coinciden los caracteres

4
Complejidad Fuerza Bruta
  • Dado un patrón de M caracteres de longitud, y un
    texto de N caracteres de longitud
  • Peor caso compara el patrón con cada subcadena
    de texto de longitud M.
  • Complejidad O(MN)
  • Mejor caso encuentra el patrón en las primeras M
    posiciones del texto.
  • Complejidad O(N)

5
Rabin-Karp
  • Calcula un valor hash para el patrón, y para cada
    subsecuencia de M-caracteres de texto.
  • Si los valores hash son diferentes, se calcula
    una valor para la siguiente secuencia.
  • Si los valores hash son iguales se usa una
    comparación de Fuerza Bruta.

6
Ejemplo Rabin-Karp
  • Valor Hash de AAAAA es 37
  • Valor Hash deAAAAH es 100

7
Algoritmo Knuth-Morris-Pratt
  • El algoritmo de búsqueda Knuth-Morris-Pratt (KMP)
    se diferencia del método de fuerza bruta porque
    mantiene una pista de información obtenida en
    comparaciones previas.
  • Se calcula una función de fallo (f) qie indica
    cuanto se la última comparación se puede reusar
    si existe un fallo.

8
Algoritmo KMP
  • Complejidad O(n m)
Write a Comment
User Comments (0)
About PowerShow.com