ASD Ćwiczenia 13
Problem minimalnego pokrywającego słowa
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.
Odpowiedz.
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 ;