Zaawansowane algorytmy i struktury danych/Ćwiczenia 3: Różnice pomiędzy wersjami
Z Studia Informatyczne
Przejdź do nawigacjiPrzejdź do wyszukiwania
Nie podano opisu zmian |
|||
Linia 1: | Linia 1: | ||
==Zadanie 1== | ==Zadanie 1== | ||
Udwodnij, że jeśli <math> LZ(x)\ =\ (v_{1},v_{2},\dots ,v_{m})</math> to x zawiera powtórzenie uu | Udwodnij, że jeśli <math> LZ(x)\ =\ (v_{1},v_{2},\dots ,v_{m})</math>, to <math>x</math> zawiera powtórzenie <math>uu</math> | ||
wtedy i tylko wtedy gdy dla pewnego k zachodzi | wtedy i tylko wtedy, gdy dla pewnego <math>k</math> zachodzi | ||
<center> | <center> | ||
Linia 7: | Linia 7: | ||
<div class="mw-collapsible mw-made=collapsible mw-collapsed">'''Rozwiązanie''' <div class="mw-collapsible-content" style="display:none">. | <div class="mw-collapsible mw-made=collapsible mw-collapsed">'''Rozwiązanie''' <div class="mw-collapsible-content" style="display:none">. | ||
Jeśli środek powtórzenia byłby wcześniej | Jeśli środek powtórzenia byłby wcześniej, <math> v_k </math> nie występowałoby w faktoryzacji. | ||
</div> | </div> | ||
</div> | </div> | ||
Linia 13: | Linia 13: | ||
== Zadanie 2 == | == Zadanie 2 == | ||
Oblicz faktoryzację LZ(x) w | Oblicz faktoryzację LZ(x) w czasie liniowym. | ||
<div class="mw-collapsible mw-made=collapsible mw-collapsed">'''Rozwiązanie''' <div class="mw-collapsible-content" style="display:none">. | <div class="mw-collapsible mw-made=collapsible mw-collapsed">'''Rozwiązanie''' <div class="mw-collapsible-content" style="display:none">. | ||
Skorzystaj z drzewa sufiksowego | Skorzystaj z drzewa sufiksowego z dodatkową informacją w węzłach. | ||
</div> | </div> | ||
</div> | </div> | ||
Linia 23: | Linia 23: | ||
== Zadanie 3 == | == Zadanie 3 == | ||
Udowodnij, że algorytm Szukanie-Powtórzeń działa w czasie liniowym. | |||
<div class="mw-collapsible mw-made=collapsible mw-collapsed">'''Rozwiązanie''' <div class="mw-collapsible-content" style="display:none">. | <div class="mw-collapsible mw-made=collapsible mw-collapsed">'''Rozwiązanie''' <div class="mw-collapsible-content" style="display:none">. | ||
Złożoność liczenia alternatywy RightTest(u1,v1) lub RightTest(u2,v2) jest <math> O(|v_{k-1}v_k|)</math> | Złożoność liczenia alternatywy RightTest(u1,v1) lub RightTest(u2,v2) jest <math> O(|v_{k-1}v_k|)</math> oraz zachodzi | ||
<math> \sum_{k=1}^m\ |v_{k-1}v_k| \le 2n </math> </div> | <math> \sum_{k=1}^m\ |v_{k-1}v_k| \le 2n </math> </div> | ||
</div> | </div> | ||
Linia 45: | Linia 45: | ||
== Zadanie 5 == | == Zadanie 5 == | ||
Udowodnij własność dowolnych palstarów: | |||
<math> x[i..n] \in PAL^* \ \Rightarrow\ parse(i)\in \{first(i),\ 2\cdot first(i)+1,\ 2\cdot first(i)-1\}</math> | <math> x[i..n] \in PAL^* \ \Rightarrow\ parse(i)\in \{first(i),\ 2\cdot first(i)+1,\ 2\cdot first(i)-1\}</math> | ||
Linia 58: | Linia 58: | ||
==Zadanie 6== | ==Zadanie 6== | ||
Udowodnij, że jeśli <math> x \in PAL^2</math> | Udowodnij, że jeśli <math> x \in PAL^2</math> | ||
to x=uv | to <math>x=uv</math> dla pewnych <mtah> u,v \in PAL </math>, gdzie <math>u</math> jest najdłuższym palindromem będącym prefiksem <math>x</math> lub <math>v</math> | ||
jest najdłuższym palindromem będącym sufiksem x. | jest najdłuższym palindromem będącym sufiksem <math>x</math>. | ||
<div class="mw-collapsible mw-made=collapsible mw-collapsed">'''Rozwiązanie''' <div class="mw-collapsible-content" style="display:none">. | <div class="mw-collapsible mw-made=collapsible mw-collapsed">'''Rozwiązanie''' <div class="mw-collapsible-content" style="display:none">. | ||
Skorzystaj z symetrii. </div> | Skorzystaj z symetrii. </div> | ||
</div> | </div> |
Wersja z 13:25, 25 wrz 2006
Zadanie 1
Udwodnij, że jeśli , to zawiera powtórzenie wtedy i tylko wtedy, gdy dla pewnego zachodzi
Rozwiązanie
Zadanie 2
Oblicz faktoryzację LZ(x) w czasie liniowym.
Rozwiązanie
Zadanie 3
Udowodnij, że algorytm Szukanie-Powtórzeń działa w czasie liniowym.
Rozwiązanie
Zadanie 4
Udowodnij własność parzystych palstarów:
Rozwiązanie
Zadanie 5
Udowodnij własność dowolnych palstarów:
Rozwiązanie
Zadanie 6
Udowodnij, że jeśli to dla pewnych <mtah> u,v \in PAL </math>, gdzie jest najdłuższym palindromem będącym prefiksem lub jest najdłuższym palindromem będącym sufiksem .
Rozwiązanie