STUDIA INFORMATICA

Transkrypt

STUDIA INFORMATICA
STUDIA INFORMATICA
Vol. 31 - 2011
SPIS TREŚCI
Nr 4B(93) - monografia
Sekwencyjne i równoległe algorytmy znajdowania podciągów /
Sebastian Deorowicz
Wykaz najważniejszych symboli i oznaczeń
13
Wykaz algorytmów omawianych w pracy
15
Wstęp
21
1. Pojęcia wstępne
1.1. Definicje
1.2. Model obliczeniowy
1.3. Obliczenia ogólnego przeznaczenia na procesorach graficznych
27
27
28
29
CZĘŚCI. PODCIĄGI ROSNĄCE
2. Najdłuższy podciąg rosnący
2.1. Wprowadzenie
2.2. Dodatkowe definicje i przyjęte założenia
2.3. Długość najdłuższego podciągu rosnącego
2.4. Algorytmy
2.4.1. Tableau Younga
2.4.2. Pokrycie zachłanne
2.5. Podsumowanie
3. Minimalny i maksymalny najdłuższy podciąg rosnący
3.1. Wprowadzenie
3.2. Wspólne idee algorytmów
3.3. Wariant o minimalnej wysokości
3.4. Wariant o maksymalnej wysokości
3.5. Wariant o minimalnej szerokości
3.6. Wariant o maksymalnej szerokości
3.7. Wariant o minimalnej sumie
3.8. Wariant o maksymalnej sumie
3.9. Analiza złożoności czasowych i pamięciowych
3.10. Podsumowanie
4. Najdłuższy podciąg rosnący o zadanym pochyleniu
4.1. Wprowadzenie
4.2. Algorytm
4.3. Podsumowanie
5. Najdłuższy cykliczny podciąg rosnący
5.1. Wprowadzenie
5.2. Algorytmy
5.2.1. Podstawowe koncepcje
5.2.2. Reprezentacja pokrycia za pomocą list
5.2.3. Reprezentacja pokrycia za pomocą drzew zrównoważonych
5.2.4. Reprezentacja pokrycia za pomocą list drzew zrównoważonych
5.3. Podsumowanie
33
35
35
36
36
36
36
38
40
42
42
43
44
47
49
50
52
54
55
56
58
58
59
65
66
66
67
67
72
73
75
77
6. Najdłuższy podciąg rosnący w przesuwającym się oknie
6.1. Wprowadzenie
6.2. Algorytmy
6.2.1. Podstawowe koncepcje
6.2.2. Reprezentacja pokrycia za pomocą list
6.2.3. Reprezentacja pokrycia za pomocą drzew zrównoważonych
6.2.4. Reprezentacja pokrycia za pomocą list drzew zrównoważonych
6.3. Podsumowanie
CZĘŚĆ II. WSPÓLNE PODCIĄGI
7. Najdłuższy wspólny podciąg
7.1. Wprowadzenie
7.2. Dodatkowe definicje
7.3. Algorytmy sekwencyjne i równoległości bitowej
7.3.1. Programowanie dynamiczne
7.3.2. Algorytm Hunta-Szymanskiego
7.3.3. Algorytm Hirschberga
7.3.4. Algorytm równoległości bitowej
7.3.5. Algorytm równoległości bitowej - wariant Hirschberga
7.3.6. Związek z problemem najdłuższego podciągu rosnącego
7.3.7. Inne wybrane algorytmy
7.4. Uogólnienie na przypadek wielu ciągów
7.5. Algorytmy równoległe
7.6. Algorytmy dla procesorów graficznych
7.6.1. Wprowadzenie
7.6.2. Podstawowe idee
7.6.3. Algorytm programowania dynamicznego
7.6.4. Algorytm równoległości bitowej
7.6.5. Wyniki eksperymentalne
7.7. Podsumowanie
78
78
79
79
83
84
84
86
87
89
89
91
92
92
93
96
98
101
104
105
107
109
110
110
112
114
118
122
126
8. Najdłuższy wspólny podciąg niezmienniczy względem transpozycji 128
8.1. Wprowadzenie
128
8.2. Algorytm pudełkowy
129
8.3. Algorytm oparty na metodzie Hunta-Szymanskiego
132
8.3.1. Idea podstawowa
132
8.3.2. Algorytm
135
8.3.3. Wyniki eksperymentalne
139
8.4. Algorytm hybrydowy
141
8.4.1. Algorytm
141
8.4.2. Wyniki eksperymentalne
143
8.5. Algorytm równoległy dla procesorów graficznych
147
8.5.1. Algorytm
147
8.5.2. Wyniki eksperymentalne
149
8.6. Podsumowanie
150
9. Najdłuższy ukierunkowany wspólny podciąg
9.1. Wprowadzenie
9.2. Algorytm oparty na metodzie Hunta-Szymanskiego
9.2.1. Podstawowa idea
9.2.2. Szczegóły implementacyjne i analiza złożoności
9.2.3. Zastosowanie techniki punktów wejścia-wyjścia
152
152
155
155
158
161
9.2.4. Wyniki eksperymentalne
9.3. Algorytm równoległości bitowej
9.3.1. Podstawy
9.3.2. Algorytm paskowy
9.3.3. Wyznaczanie ciągu wynikowego
9.3.4. Szczegóły implementacyjne i analiza złożoności
9.3.5. Wyniki eksperymentalne
9.4. Algorytm równoległy dla procesorów graficznych
9.4.1. Algorytm
9.4.2. Wyniki eksperymentalne
9.5. Podsumowanie
161
167
167
169
177
178
182
184
184
189
190
10. Najdłuższy scalony wspólny podciąg
10.1. Wprowadzenie
10.2. Algorytm równoległości bitowej
10.2.1. Podstawowe idee
10.2.2. Algorytm
10.2.3. Szczegóły implementacyjne
10.3. Wyniki eksperymentalne
10.4. Podsumowanie
192
192
195
195
197
200
201
203
Wnioski końcowe
207
Bibliografia
210
Spis rysunków
226
Spis tabel
233
Streszczenie
234
Skorowidz
236
Oprac. BPK

Podobne dokumenty