ASD Ćwiczenia 1: Różnice pomiędzy wersjami
Z Studia Informatyczne
Przejdź do nawigacjiPrzejdź do wyszukiwania
mNie podano opisu zmian |
Nie podano opisu zmian |
||
Linia 59: | Linia 59: | ||
cyfry jedynkę. Jeśli mamy -1, to odpowiedni odważnik kładziemy na szalce razem z danym przedmiotem, | cyfry jedynkę. Jeśli mamy -1, to odpowiedni odważnik kładziemy na szalce razem z danym przedmiotem, | ||
jeśli +1, to na drugiej szalce, a jeśli zero - ignorujemy. | jeśli +1, to na drugiej szalce, a jeśli zero - ignorujemy. | ||
</div> | |||
</div> | |||
=='''Zadanie 4''' == | |||
Udowodnij poprawność algorytmu 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"> | |||
Relacja mniejszości dla ciągów niech będzie relacją mniejszości leksykograficznej. | |||
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> | |||
=='''Zadanie 5''' == | |||
Dla jakich ciągów algorytm na cykliczną równoważność wykonuje maksymalną liczbę porównan symboli? | |||
<div class="mw-collapsible mw-made=collapsible mw-collapsed"> | |||
Rozwiązanie | |||
<div class="mw-collapsible-content" style="display:none"> | |||
Dla ciągów postaci <math> 1^*201,\ 1^*20 </math> o tej samej długości. | |||
</div> | </div> | ||
</div> | </div> |
Wersja z 11:55, 15 cze 2007
Zadanie 1
Udowodnij, że algorytm Najdłuższy-Malejący jest poprawny.
Rozwiązanie
Zadanie 2
Udowodnij, że algorytm Permutacja-Wagowa jest poprawny.
Rozwiązanie
Zadanie 3
Udowodnij, że algorytm Proste-Pakowanie jest poprawny.
Rozwiązanie
Zadanie 4
Przypuśćmy, że mamy wage szalkową i odważniki będące potęgami trójki, dla każdej potęgi dokładnie jeden odważnik. Jak powinniśmy rozmieścić odważniki na wadze, aby doładnie zważyć przedmiot o zadanej wadze x?
Rozwiązanie
Zadanie 4
Udowodnij poprawność algorytmu na cykliczną równoważność słów.
Rozwiązanie
Zadanie 5
Dla jakich ciągów algorytm na cykliczną równoważność wykonuje maksymalną liczbę porównan symboli?
Rozwiązanie