Teoria informacji/TI Ćwiczenia 1: Różnice pomiędzy wersjami
Nie podano opisu zmian |
Nie podano opisu zmian |
||
Linia 104: | Linia 104: | ||
== Zadania | == Zadania domowe == | ||
=== Zadanie 1 - Kody wyczerpujące alfabet === | |||
=== Zadanie 1 === | |||
Mówimy że kod '''wyczerpuje''' alfabet, jeśli dowolny wystarczająco długi ciąg liter alfabetu zawsze rozpoczyna się od słowa kodowego (innymi słowy dowolny nieskończony ciąg liter da się rozłożyć na słowa kodowe). Pokaż że dla dowolnego skończonego kodu <math>X</math> dowolne dwa z poniższych warunków implikują trzeci: | Mówimy że kod '''wyczerpuje''' alfabet, jeśli dowolny wystarczająco długi ciąg liter alfabetu zawsze rozpoczyna się od słowa kodowego (innymi słowy dowolny nieskończony ciąg liter da się rozłożyć na słowa kodowe). Pokaż że dla dowolnego skończonego kodu <math>X</math> dowolne dwa z poniższych warunków implikują trzeci: | ||
Linia 116: | Linia 115: | ||
Pokaż że żaden z tych warunków nie implikuje pozostałych dwóch. Czy założenie o skończoności kodu jest konieczne? | Pokaż że żaden z tych warunków nie implikuje pozostałych dwóch. Czy założenie o skończoności kodu jest konieczne? | ||
=== Zadanie 2 - Ważenie monet === | |||
Załóżmy że mamy <math>n \ge 3</math> monet, z których jedna jest fałszywa i różni się ciężarem od pozostałych (może być lżejsza lub cięższa). Naszym zadaniem jest znalezienie fałszywej monety i określenie czy jest cięższa czy lżejsza. Do dyspozycji mamy jedynie wagę szalkową, na której szalki możemy kłaść monety. Waga wskazuje zawsze jedną z trzech możliwości: lewa szalka cięższa, prawa szalka cięższa lub równowaga. | |||
* Jakie jest górne ograniczenie na liczbę monet <math>n</math> przy których może się nam to udać przy użyciu <math>k</math> ważeń? | |||
* Opracuj strategię pozwalającą rozwiązać zadanie dla trzech ważeń i dwunastu monet. | |||
{{wskazowka||| | |||
<div class="mw-collapsible mw-made=collapsible mw-collapsed"> | |||
<div class="mw-collapsible-content" style="display:none"> | |||
Ponumeruj monety i spróbuj porównać ważenie do „Gry w 20 pytań”, pamiętając że tym razem na każde pytanie są trzy możliwe odpowiedzi. | |||
</div> | |||
</div>}} |
Wersja z 12:58, 19 sie 2006
Ćwiczenia
Ćwiczenie 1 [Definicja kodu]
Mamy dane zbiory:
- {0,01,11}
- {0,11,10}
- {00,01,10}
- {00,001,100}
- {1,010,110,001,000,101}
Określ:
- Które z nich są kodami?
- Które są bezprefiskowe?
- Które są maksymalne bezprefiksowe?
Rozwiązanie
Ćwiczenie 2 [Rozpoznawanie kodów]
Wskazowka
Rozwiązanie
Ćwiczenie 3 [Nieskończone kody]
Definicja kodu nie zakłada że zawiera on skończenie wiele słów. Przykładem nieskończonego kodu jest zbiór .
Udowodnij że każdy nieskończony kod również spełnia nierówność Krafta.Rozwiązanie
Ćwiczenie 4 [Maksymalne kody]
Wskazowka
Rozwiązanie
Zadania domowe
Zadanie 1 - Kody wyczerpujące alfabet
Mówimy że kod wyczerpuje alfabet, jeśli dowolny wystarczająco długi ciąg liter alfabetu zawsze rozpoczyna się od słowa kodowego (innymi słowy dowolny nieskończony ciąg liter da się rozłożyć na słowa kodowe). Pokaż że dla dowolnego skończonego kodu dowolne dwa z poniższych warunków implikują trzeci:
- jest bezprefiksowy
- wyczerpuje alfabet
Pokaż że żaden z tych warunków nie implikuje pozostałych dwóch. Czy założenie o skończoności kodu jest konieczne?
Zadanie 2 - Ważenie monet
Załóżmy że mamy monet, z których jedna jest fałszywa i różni się ciężarem od pozostałych (może być lżejsza lub cięższa). Naszym zadaniem jest znalezienie fałszywej monety i określenie czy jest cięższa czy lżejsza. Do dyspozycji mamy jedynie wagę szalkową, na której szalki możemy kłaść monety. Waga wskazuje zawsze jedną z trzech możliwości: lewa szalka cięższa, prawa szalka cięższa lub równowaga.
- Jakie jest górne ograniczenie na liczbę monet przy których może się nam to udać przy użyciu ważeń?
- Opracuj strategię pozwalającą rozwiązać zadanie dla trzech ważeń i dwunastu monet.
Wskazówka