• Producent: Wydawnictwo Naukowe PWN
  • Kategoria: Książki popularnonaukowe
  • ISBN: 9788301158217
  • Oprawa: miękka
  • Autor: Piotr Stańczyk
  • Wydawnictwo: Wydawnictwo Naukowe Pwn
  • Ilość stron: 312
  • Rok wydania: 2009
Tytuł Algorytmika użyteczna Podtytuł Nie tylko dla mistrzów Autor Piotr Stańczyk Język polski Wydawnictwo Wydawnictwo Naukowe PWN ISBN 978-83-01-15821-7 Rok wydania 2009 Warszawa Wydanie 1 ilość stron 312 Format pdf Spis treści Słowo wstępne 9 Przedmowa 11 1. Algorytmy grafowe 15 1.1. Reprezentacja grafu 16 1.2. Przeszukiwanie grafu wszerz 20 1.3. Przeszukiwanie grafu w głąb 25 1.4. Silnie spójne składowe 31 1.5. Sortowanie topologiczne 38 1.6. Acykliczność 41 1.7. Mosty, punkty artykulacji i dwuspójnie składowe 44 1.8. Ścieżka i cykl Eulera 51 1.9. Niewiele znaczące drzewo rozpinające 57 1.10. Algorytm Dijkstry 60 1.11. Algorytm Bellmana-Forda 65 1.12. Maksymalny przepływ 67 1.12.1. Maksymalny przepły wyznaczany metodą Dinica 68 1.12.2. Maksymalny przepływ dla krawędzi jednostkowych 72 1.12.3. Najtańszy maksymalny przepływ dla krawędzi jednostkowych 74 1.13. Maksymalne skojarzenie w grafie dwudzielnym 77 1.13.1. Dwudzielność grafu 78 1.13.2. Maksymalne skojarzenie w grafie dwudzielnym w czasie O (n(n+m)) 81 1.13.3. Maksymalne skojarzenie w grafie dwudzielnym w czasie O((n+m)n1/2) 83 1.13.4. Najdroższe skojarzenie w grafie dwudzielnym 86 2. Geometria obliczeniowa na płaszczyźnie 91 2.1. Odległość punktu od prostej 95 2.2. Pole wielokąta 96 2.3. Przynależność punktu do figury 98 2.4. Punkty przecięcia 105 2.5. Trzy punkty - okrąg 114 2.6. Sortowanie kątowe 116 2.7. Otoczka wypukła 120 2.8. Para najbliższych punktów 123 3. Kombinatoryka 128 3.1. Permutacje w kolejności antyleksykograficznej 128 3.2. Permutacje - nieduża liczba transpozycji 130 3.3. Permutacje - drobna ilość transpozycji sąsiednich 132 3.4. Wszystkie podzbiory zbioru 135 3.5. Podzbiory k-elementowe w kolejności leksykograficznej 137 3.6. Podziały zbioru z użyciem niewielkiej liczby zmian 138 3.7. Podziały liczby w kolejności antyleksykograficznej 140 4. Teoria liczb 142 4.1. Współczynnik dwumianowy 142 4.2. Największy wspólny dzielnik 144 4.3. Odwrotność modularna 147 4.4. Kongruencje 149 4.5. Prędkie potęgowanie modularne 152 4.6. Sito Eratostenesa 154 4.7. Lista liczb pierwszych 155 4.8. Test pierwszości 157 4.9. Arytmetyka sporych liczb 160 5. Struktury danych 178 5.1. Struktura informacji do reprezentacji zbiorów rozłącznych 178 5.2. Drzewa wyszukiwań binarnych 182 5.2.1. Drzewa maksimów 185 5.2.2. Drzewa licznikowe 187 5.2.3. Drzewa pozycyjne 189 5.2.4. Drzewa pokryciowe 192 5.3. Binarne drzewa statyczne dynamicznie alokowane 195 5.4. Wzbogacane drzewa binarne 200 6. Algorytmy tekstowe 212 6.1. Algorytm KMP 212 6.2. Mały okres słowa 216 6.3. KMP dla wielu wzorców (algorytm Aho-Corasick) 217 6.4. Promienie palindromów w słowie 223 6.5. Drzewa sufiksowe 226 6.5.1. Ilość wystąpień wzorca w tekście 230 6.5.2. Liczba najróżniejszych podsłów słowa 232 6.5.3. Najdłuższe podsłowo występujące n razy 233 6.6. Maksymalny leksykograficznie sufiks 234 6.7. Równoważność cykliczna 235 6.8. Niewiele znacząca leksykograficznie cykliczność słowa 237 7. Algebra liniowa 240 7.1. Eliminacja Gaussa 240 7.1.1. Eliminacja Gaussa w Z2 241 7.1.2. Eliminacja Gaussa w Zp 244 7.2. Programowanie liniowe 248 8. Komponenty strategii w trakcie zawodów 253 8.1. Szacowanie oczekiwanej złożoności czasowej 253 8.2. Strategia pracy w drużynie 255 8.3. Szablon 258 8.4. Plik Makefile 259 8.5. Cechy kombinacji programów 259 8.5.1. Parametr - Weffc++ 260 8.5.2. Parametr - Wformat 262 8.5.3. Parametr - Wshadow 263 8.5.4. Parametr - Wsequence-point 264 8.5.5. Parametr - Wunused 267 8.5.6. Parametr - Wuninitialized 268 8.5.7. Parametr Wfloat-equal 269 8.6. Bezustanny time-limit 270 8.6.1. Eliminacja dzielenia 271 8.6.2. Wczytywanie danych wejściowych 271 8.6.3. Wstawki asemblerowe i kompilacja z optymalizacjami 273 8.6.4. Lepsze wykorzystanie pamięci podręcznej 274 8.6.5. Przetwarzanie wstępne 275 Wskazówki do zadań 278 Dodatki 292 A. Nagłówki używane w programach 292 B. Nagłównki Eryka Kopczyńskiego na konkurs TopCoder 295 C. Sposoby na sukces w zawodach 299 D. Wykaz zadań na programowanie dynamiczne 304 E. Wykaz zadań na programowanie zachłanne 305 F. Wykaz przykładowych zadań 306 Literatura 307 Indeks 309

Produkty podobne

Produkty najpopularniejsze w kategorii Książki popularnonaukowe