Os algoritmos para busca de partes de um texto (substring) em geral procuram pela ocorrência de uma

"palavra" W dentro de um "texto" S empregando a simples técnica de que quando aparece uma diferença, a palavra tem em si a informação necessária para determinar onde começar a próxima comparação. Um dos algoritmos mais conhecido é o KMP (Knuth-Morris-Pratt). (Cormen, T. H., Introdução aos Algoritmos). a) Elabore um programa em qualquer linguagem de programação que seja capaz de realizar a identificação de um padrão W dentro de um texto S, com complexidade O(n) no pior caso.

b) A partir da cadeia de caracteres textuais ABACAABACCABACABAABB demonstre a pesquise do padrão ABACAB utilizando o método KMP, informando quantas comparações foram realizadas pelo método.

RESPONDER

Rafaela está aguardando sua ajuda, Clique aqui para responder.