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.

Respuestas a la pregunta(3)

Su respuesta a la pregunta