Relación entre el algoritmo KMP y el algoritmo Z
KMP
yZ
Los algoritmos son algoritmos bien conocidos para la búsqueda de cadenas,
KMP
el algoritmo trata de encontrar los patrones a través de una función de falla KMP que se define como (pat
siendo el patrón de búsqueda)
lps [i] = el prefijo apropiado más largo de pat [0..i] que también es un sufijo de pat [0..i].
por ejemplo parastring "abcab"
podría ser[0, 0, 0, 1, 2]
donde comoZ
El algoritmo usa la función z que se define como:
Dada una cadena S de longitud n, el algoritmo Z produce una matriz Z donde Z [i] es la longitud de la subcadena más larga a partir de pat [i] que también es un prefijo de pat.
Ahora la pregunta es ¿podemos lograr elZ
función por el uso deKMP
¿algoritmo? Lo que estoy buscando es algunas modificaciones en ellps
matriz que conduce a los mismos resultados que elZ[i]
formación.