« M E N U » |
»
|
» Ktoś, kto mówi, że nie zna się na sztuce, źle zna samego siebie. | » Akta Golgoty - Philipp Vandenberg, ► Ebooki ◄, • Thriller •, • Akta Golgoty Philipp Vandenberg • | » Alysson Noel Nieśmiertelni 03 Shadowland(W cieniu klątwy) Całość, ebooki, Wersje , alyson noel, Nieśmiertelni, Nieśmiertelni 03 Shadowland | » Aleksandra Ruda - Odnaleźć swą Drogę, Ebooki, Aleksandra Ruda | » Alkohole 3, Użytkowe, Ebooki, Alkohole | » Alkohole 7, Użytkowe, Ebooki, Alkohole | » Alkohole 2, Użytkowe, Ebooki, Alkohole | » Albrecht Karl - inteligencja praktyczna. sztuka i nauka zdrowego rozsądku pełna wersja, ! EBOOKI, A, Albrecht Karl | » Alien T.J. - Miasto Złotego Gryfa, Ebooki, A, Alien T. J | » Aldiss Brian - Helikonia 1 - Wojna Helikonii, ebooki SF | » Alfa Eridana - ANTOLOGIA, ebook txt, Ebooki w TXT |
zanotowane.pldoc.pisz.plpdf.pisz.plaramix.keep.pl
|
|
[ Pobierz całość w formacie PDF ] //-->Wszelkie prawa zastrzeżone. Nieautoryzowane rozpowszechnianie całości lub fragmentu niniejszejpublikacji w jakiejkolwiek postaci jest zabronione. Wykonywanie kopii metodą kserograficzną,fotograficzną, a także kopiowanie książki na nośniku filmowym, magnetycznym lub innympowoduje naruszenie praw autorskich niniejszej publikacji.Wszystkie znaki występujące w tekście są zastrzeżonymi znakami firmowymi bądź towarowymiich właścicieli.Autor oraz Wydawnictwo HELION dołożyli wszelkich starań, by zawarte w tej książce informacjebyły kompletne i rzetelne. Nie biorą jednakżadnejodpowiedzialności ani za ich wykorzystanie,ani za związane z tym ewentualne naruszenie praw patentowych lub autorskich. Autor orazWydawnictwo HELION nie ponoszą równieżżadnejodpowiedzialności za ewentualne szkodywynikłe z wykorzystania informacji zawartych w książce.Redakcja: Michał MrowiecProjekt okładki: Maciej PasekFotografia na okładce została wykorzystana za zgodą iStockPhoto Inc.Wydawnictwo HELIONul. Kościuszki 1c, 44-100 GLIWICEtel. 32 231 22 19, 32 230 98 63e-mail:helion@helion.plWWW:http://helion.pl(księgarnia internetowa, katalog książek)Drogi Czytelniku!Jeżeli chcesz ocenić tę książkę, zajrzyj pod adreshttp://helion.pl/user/opinie?algo4_ebookMożesz tam wpisać swoje uwagi, spostrzeżenia, recenzję.ISBN: 978-83-246-5377-5Copyright © Helion 2010Printed in Poland.•••Poleć książkę na Facebook.comKup w wersji papierowejOceń książkę••Księgarnia internetowaLubię to!»Nasza społecznośćSpis treściPrzedmowa ...................................................................................... 9Rozdział 1. Zanim wystartujemy ....................................................................... 17Jak to wcześniej bywało, czyli wyjątki z historii maszyn algorytmicznych ................... 18Jak to się niedawno odbyło,czyli o tym, kto „wymyślił” metodologię programowania ........................................... 21Proces koncepcji programów .......................................................................................... 22Poziomy abstrakcji opisu i wybór języka ....................................................................... 23Poprawność algorytmów ................................................................................................ 24Rozdział 2. Rekurencja .................................................................................... 27Definicja rekurencji ........................................................................................................ 27Ilustracja pojęcia rekurencji ............................................................................................ 28Jak wykonują się programy rekurencyjne? ..................................................................... 30Niebezpieczeństwa rekurencji ........................................................................................ 31Ciąg Fibonacciego .................................................................................................... 31Stack overflow! ........................................................................................................ 33Pułapek ciąg dalszy ........................................................................................................ 34Stąd do wieczności ................................................................................................... 34Definicja poprawna, ale... ......................................................................................... 35Typy programów rekurencyjnych ................................................................................... 36Myślenie rekurencyjne ................................................................................................... 38Przykład 1.: Spirala .................................................................................................. 38Przykład 2.: Kwadraty „parzyste” ............................................................................ 40Uwagi praktyczne na temat technik rekurencyjnych ...................................................... 41Zadania ........................................................................................................................... 42Rozwiązania i wskazówki do zadań ............................................................................... 44Rozdział 3. Analiza złożoności algorytmów ........................................................ 49Definicje i przykłady ...................................................................................................... 50Jeszcze raz funkcja silnia ......................................................................................... 53Zerowanie fragmentu tablicy .................................................................................... 57Wpadamy w pułapkę ................................................................................................ 58Różne typy złożoności obliczeniowej ...................................................................... 59Nowe zadanie: uprościć obliczenia! ............................................................................... 614Algorytmy, struktury danych i techniki programowaniaAnaliza programów rekurencyjnych ............................................................................... 62Terminologia i definicje ........................................................................................... 62Ilustracja metody na przykładzie .............................................................................. 63Rozkład logarytmiczny ............................................................................................. 64Zamiana dziedziny równania rekurencyjnego .......................................................... 66Funkcja Ackermanna, czyli coś dla smakoszy ......................................................... 66Złożoność obliczeniowa to nie religia! ........................................................................... 68Techniki optymalizacji programów ................................................................................ 68Zadania ........................................................................................................................... 69Rozwiązania i wskazówki do zadań ............................................................................... 70Rozdział 4. Algorytmy sortowania ..................................................................... 73Sortowanie przez wstawianie, algorytm klasy O(N2) ..................................................... 74Sortowanie bąbelkowe, algorytm klasy O(N2) ............................................................... 75Quicksort, algorytm klasy O(N log N) ........................................................................... 77Heap Sort — sortowanie przez kopcowanie ................................................................... 80Scalanie zbiorów posortowanych ................................................................................... 82Sortowanie przez scalanie ............................................................................................... 83Sortowanie zewnętrzne ................................................................................................... 84Uwagi praktyczne ........................................................................................................... 87Rozdział 5. Typy i struktury danych .................................................................. 89Typy podstawowe i złożone ........................................................................................... 89Ciągi znaków i napisy w C++ ......................................................................................... 90Abstrakcyjne struktury danych ....................................................................................... 92Listy jednokierunkowe ............................................................................................. 93Tablicowa implementacja list ................................................................................. 115Stos ......................................................................................................................... 119Kolejki FIFO .......................................................................................................... 123Sterty i kolejki priorytetowe ................................................................................... 125Drzewa i ich reprezentacje ..................................................................................... 131Zbiory ..................................................................................................................... 143Zadania ................................................................................................................... 145Rozwiązania zadań ................................................................................................. 146Rozdział 6. Derekursywacja i optymalizacja algorytmów .................................. 147Jak pracuje kompilator? ................................................................................................ 148Odrobina formalizmu nie zaszkodzi! ............................................................................ 150Kilka przykładów derekursywacji algorytmów ............................................................ 151Derekursywacja z wykorzystaniem stosu ..................................................................... 154Eliminacja zmiennych lokalnych ............................................................................ 154Metoda funkcji przeciwnych ........................................................................................ 156Klasyczne schematy derekursywacji ............................................................................ 158Schemat typu while ................................................................................................ 159Schemat typu if-else ............................................................................................... 160Schemat z podwójnym wywołaniem rekurencyjnym ............................................. 162Podsumowanie .............................................................................................................. 163Rozdział 7. Algorytmy przeszukiwania ............................................................. 165Przeszukiwanie liniowe ................................................................................................ 165Przeszukiwanie binarne ................................................................................................ 166Transformacja kluczowa (hashing) ............................................................................... 167W poszukiwaniu funkcji H ..................................................................................... 169Najbardziej znane funkcje H .................................................................................. 169Obsługa konfliktów dostępu ................................................................................... 171Spis treści5Powrót doźródeł.................................................................................................... 172Jeszcze raz tablice! ................................................................................................. 173Próbkowanie liniowe .............................................................................................. 173Podwójne kluczowanie ........................................................................................... 175Zastosowania transformacji kluczowej ................................................................... 176Podsumowanie metod transformacji kluczowej ..................................................... 176Rozdział 8. Przeszukiwanie tekstów ............................................................... 179Algorytm typu brute-force ............................................................................................ 179Nowe algorytmy poszukiwań ....................................................................................... 181Algorytm K-M-P .................................................................................................... 182Algorytm Boyera i Moore’a ................................................................................... 185Algorytm Rabina i Karpa ....................................................................................... 187Rozdział 9. Zaawansowane techniki programowania ....................................... 191Programowanie typu „dziel i zwyciężaj” ...................................................................... 192Odszukiwanie minimum i maksimum w tablicy liczb ............................................ 193Mnożenie macierzy o rozmiarze N×N .................................................................... 195Mnożenie liczb całkowitych ................................................................................... 197Inne znane algorytmy „dziel i zwyciężaj” .............................................................. 198Algorytmy „żarłoczne”, czyli przekąsić coś nadszedł już czas... .................................. 199Problem plecakowy, czyli niełatwe jestżycieturysty piechura .............................. 200Programowanie dynamiczne ......................................................................................... 202Ciąg Fibonacciego .................................................................................................. 203Równania z wieloma zmiennymi ........................................................................... 204Najdłuższa wspólna podsekwencja ........................................................................ 205Inne techniki programowania ....................................................................................... 208Uwagi bibliograficzne .................................................................................................. 210Rozdział 10. Elementy algorytmiki grafów ......................................................... 211Definicje i pojęcia podstawowe .................................................................................... 212Cykle w grafach ............................................................................................................ 214Sposoby reprezentacji grafów ....................................................................................... 217Reprezentacja tablicowa ......................................................................................... 217Słowniki węzłów .................................................................................................... 218Listy kontra zbiory ................................................................................................. 219Podstawowe operacje na grafach .................................................................................. 220Suma grafów .......................................................................................................... 220Kompozycja grafów ............................................................................................... 220Potęga grafu ........................................................................................................... 220Algorytm Roy-Warshalla ............................................................................................. 221Algorytm Floyda-Warshalla ......................................................................................... 224Algorytm Dijkstry ........................................................................................................ 227Algorytm Bellmana-Forda ............................................................................................ 228Drzewo rozpinające minimalne .................................................................................... 228Algorytm Kruskala ................................................................................................. 229Algorytm Prima ...................................................................................................... 230Przeszukiwanie grafów ................................................................................................. 230Strategia „w głąb” (przeszukiwanie zstępujące) ..................................................... 231Strategia „wszerz” .................................................................................................. 232Inne strategie przeszukiwania ................................................................................. 234Problem właściwego doboru ......................................................................................... 235Podsumowanie .............................................................................................................. 239Zadania ......................................................................................................................... 239
[ Pobierz całość w formacie PDF ] zanotowane.pldoc.pisz.plpdf.pisz.plhot-wife.htw.pl
|
|
Cytat |
Dobry przykład - połowa kazania. Adalberg I ty, Brutusie, przeciwko mnie?! (Et tu, Brute, contra me?! ) Cezar (Caius Iulius Caesar, ok. 101 - 44 p. n. e) Do polowania na pchły i męża nie trzeba mieć karty myśliwskiej. Zygmunt Fijas W ciepłym klimacie najłatwiej wyrastają zimni dranie. Gdybym tylko wiedział, powinienem był zostać zegarmistrzem. - Albert Einstein (1879-1955) komentując swoją rolę w skonstruowaniu bomby atomowej
|
|