Łagodne wprowadzenie do analizy algorytmów
- Dodaj recenzję:
- Kod: 5559
- Producent: Wydawnictwo Politechniki Gdańskiej
- Autor: Marek Kubale
- Rok wydania: 2024, wydanie dwudzieste
- ISBN: 978-83-7348-914-1
- Liczba stron: 120
- Format: B5
-
-
- szt.
- Cena netto: 33,33 zł 35,00 zł
Opis
Skrypt przeznaczony jest dla osób interesujących się podstawami informatyki, w tym przede wszystkim dla studentów kierunku informatyka. Książka może służyć jako wprowadzenie do wykładu „Algorytmy i struktury danych”. Jej fragmenty mogą być także wykorzystane w nauczaniu przedmiotu „matematyka dyskretna”.
Autor zakłada, że czytelnik ma pewne podstawowe przygotowanie z matematyki dyskretnej i że potrafi układać algorytmy w Pascalu lub dowolnym innym języku wysokiego poziomu. Znajomość przedmiotów „metody i techniki programowania”, „praktyka programowania” oraz „matematyka dyskretna” jest pożądana, aczkolwiek niekonieczna, przy lekturze tego podręcznika.
Niniejsza pozycja składa się z trzech rozdziałów zasadniczych:
rozdział I – wprowadza podstawy formalne, niezbędne przy analizie algorytmów pod kątem złożoności obliczeniowej. Podana jest klasyfikacja problemów rozwiązywalnych za pomocą komputerów, przypomniane wybrane pojęcia matematyczne, zdefiniowane symbole oszacowań asymptotycznych. Opisane są najczęściej spotykane metody przy analizie złożoności obliczeniowej algorytmów rekurencyjnych;
rozdział II – wprowadza w zagadnienie analizy algorytmów z różnych punktów widzenia. Rozważane są najprostsze algorytmy: szeregowe, scentralizowane, statyczne i dokładne. Rozpatrywane są zagadnienia poprawności, złożoności czasowej, złożoności pamięciowej, optymalności, stabilności numerycznej, prostoty i wrażliwości. Rozdział zamyka przykład algorytmu probabilistycznego;
rozdział III – przedstawia podstawowe struktury danych, które są niezbędnym komponentem każdego rozwiązania algorytmicznego. W rozdziale rozważa się takie struktury, jak: tablica, lista, zbiór, a zwłaszcza graf.
Skrypt kończy się dodatkiem, który zawiera sekwencję 20 zagadek algorytmicznych, które wymagają znalezienia efektywnych algorytmów rozwiązujących postawione problemy. Na końcu zamieszczony jest słownik polsko-angielski ważniejszych pojęć.
Spis treści
Przedmowa / 5
1. Wprowadzenie / 7
1.1. Rys historyczny / 7
1.2. Klasyfikacja problemów / 9
1.3. Język PseudoPascal / 15
1.4. Podstawy matematyczne / 17
1.4.1. Logarytmy i zaokrąglenia całkowite / 17
1.4.2. Sumy szeregów / 18
1.5. Symbole oszacowań asymptotycznych / 20
1.5.1. Symbol O(·) / 21
1.5.2. Symbol o(·) / 21
1.5.3. Symbol Ω(·) / 22
1.5.4. Symbol ω(·) / 22
1.5.5. Symbol Θ ~ (·) / 23
1.5.6. Symbol Θ ~ (·) / 24
1.6. Równania rekurencyjne niejednorodne / 24
1.6.1. Równania typu „dziel i zwyciężaj” / 25
1.6.2. Równania typu „jeden krok w tył” / 27
Zadania / 31
2. Podstawy analizy algorytmów / 38
2.1. Wstęp / 38
2.2. Poprawność algorytmów / 40
2.3. Złożoność czasowa algorytmów / 43
2.3.1. Operacje podstawowe / 43
2.3.2. Rozmiar danych / 44
2.3.3. Pesymistyczna złożoność obliczeniowa / 45
2.3.4. Oczekiwana złożoność obliczeniowa / 45
2.4. Złożoność pamięciowa / 48
2.5. Optymalność / 52
2.6. Dokładność numeryczna algorytmów / 54
2.6.1. Zadania źle uwarunkowane / 54
2.6.2. Stabilność numeryczna / 56
2.7. Prostota algorytmów / 57
2.8. Wrażliwość algorytmów / 60
2.9. Programowanie a złożoność obliczeniowa / 61
2.9.1. Rząd złożoności obliczeniowej / 61
2.9.2. Stała proporcjonalności złożoności obliczeniowej / 64
2.9.3. Imperatyw złożoności obliczeniowej i odstępstwa / 67
2.10. Przykład analizy: mnożenie macierzy / 68
2.11. Algorytmy probabilistyczne / 72
Zadania / 75
3. Podstawowe struktury danych / 84
3.1. Tablice / 84
3.2. Listy 86
3.3. Zbiory / 87
3.4. Grafy / 88
3.4.1. Macierz sąsiedztwa wierzchołków / 94
3.4.2. Listy sąsiedztwa wierzchołków / 97
3.4.3. Pęki wyjściowe / 98
Zadania / 98
4. Dodatek: zagadki algorytmiczne / 105
4.1. Alicja i Bogdan w pizzerii 105
4.2. Alicja i Bogdan w naleśnikarni / 106
4.3. Alicja i Bogdan w samochodzie / 107
4.4. Alicja i Bogdan wśród ludożerców / 107
4.5. Alicja i Bogdan remontują mieszkanie / 108
4.6. Alicja i Bogdan na działce / 109
4.7. Alicja i Bogdan zostają deweloperami / 109
4.8. Alicja kupuje buty / 110
4.9. Alicja i Bogdan wyprawiają wesele / 110
4.10. Alicja w krainie czarów / 111
4.11. Alicja i Bogdan w kapeluszach / 111
4.12. Alicja i Bogdan na wczasach / 112
4.13. Kilka praktycznych problemów Alicji i Bogdana / 112
4.14. Bogdan w więzieniu / 112
Słownik polsko-angielski / 114
Literatura / 119