ASD Ćwiczenia 13: Różnice pomiędzy wersjami
Z Studia Informatyczne
Przejdź do nawigacjiPrzejdź do wyszukiwania
Nie podano opisu zmian |
Nie podano opisu zmian |
||
Linia 51: | Linia 51: | ||
Fakt ten wynika z lematu o okresowości i z definicji tablicy P'. | Fakt ten wynika z lematu o okresowości i z definicji tablicy P'. | ||
</div> | </div> | ||
</div></math></div> | </div> | ||
Zadanie 3 | |||
Udowdnij poprawność algorytmy na cykliczną równoważność słów. | |||
<div class="mw-collapsible mw-made=collapsible mw-collapsed"> | |||
Rozwiązanie | |||
<div class="mw-collapsible-content" style="display:none"> | |||
Zdefiniujmy: | |||
<center> | |||
<math>D(u)=\{k:1\leq k\leq n</math> oraz <math>u^{(k)}>w^{(j)}</math> dla pewnego <math>j\}</math>,<br> | |||
<math>D(w)=\{k:1\leq k\leq n</math> oraz <math>w^{(k)}>u^{(j)}</math> dla pewnego <math>j\}</math>. | |||
</center> | |||
Skorzystamy z prostego faktu: | |||
Jeśli <math>D(u)=[1.. n]</math> lub <math>D(w)=[1.. n]</math>, to <math>u,w</math> nie są równoważne. | |||
Poprawność algorytmu wynika teraz z tego, że po każdej głównej iteracji zachodzi niezmiennik: | |||
<center> | |||
<math>D(w)\supseteq [1.. i]</math>\ oraz \ <math>D(u)\supseteq [1.. j]</math>.</center> | |||
</div> | |||
</div> |
Wersja z 09:09, 24 sie 2006
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
Zadanie 2
Udowodnić, że w wersji on-line algorytmu KMP mamy
Rozwiązanie
Zadanie 3
Udowdnij poprawność algorytmy na cykliczną równoważność słów.
Rozwiązanie