Zadanie 1
Słowem pokrywającym tekst x taki tekst y, którego wystąpienia w x
pokrywają cały tekst x. Na przykład aba pokrywa ababaaba, natomiast nie pokrywa tekstu abaaababa.
Obliczyć długość najkrótszego słowa pkrywającego dany tekst x.
Rozwiązanie
Niech
będzie rozmiarem minimalnego pokrywajćego słowa dla prefiksu . Algorytm wykorzystuje następujący
fakt: \ \ Następujący algorytm liczy długość minimalnego słowa
pokrywającego tekstu x. Liczymy wartości najmniejszej długości minimalnego słowa pokrywającego dla każdego .
W -tej
iteracji algorytm pamięta jaki jest ``znany zakres każdego minimalnego słowa pokrywającego.

Rysunek 3: -ta iteracja algorytmu, dla , oraz słowa . Tuż przed
rozpoczęciem tej iteracji mamy , , . Po zakończeniu -tej iteracji
mamy , ponieważ .
Algorytm Rozmiar-Minimalnego-Pokrycia
for to do
for to do
if oraz then
; ;
return ;
Zadanie 2
Udowodnić,że w wersji on-line algorytmu KMP mamy
Rozwiązanie
Wystarczy wykazać, że Parser nie mógł rozpoznać (nieznana funkcja „\math”): {\displaystyle P'[i]=j,\ P'[j]=k>0\ \Rightarrow \ i\ge k+j<\math> Fakt ten wynika z lematu o okresowości i z definicji tablicy P'. </div> </div>}