Dodano produkt do koszyka

Klasyczne problemy informatyki w Pythonie

Klasyczne problemy informatyki w Pythonie

David Kopec

ocena:
głosów: - Napisz recenzję
Format:

Pobierz fragment

Problemy informatyki, które wydają się nowe lub unikatowe, często są zakorzenione w klasycznych algorytmach, technikach kodowania czy zasadach inżynierii. I klasyczne metody są nadal najlepszym sposobem ich rozwiązywania! Opanowanie tych technik w Pythonie zwiększa szanse sukcesu realizowanych projektów webowych, przetwarzania danych, uczenia maszynowego i wielu innych.
Książka Klasyczne problemy informatyki w Pythonie podszlifuje Twoje umiejętności rozwiazywania problemów informatyki na podstawie sprawdzonych scenariuszy, ćwiczeń i algorytmów wykorzystujących Pythona. Przedstawia ona dziesiątki wyzwań, począwszy od prostych zadań, takich jak algorytm wyszukiwania binarnego po klasteryzację danych przy użyciu k-średnich. Poczujesz szczególną satysfakcję, gdy uda Ci się rozwiązać zadania łączące informatykę z praktycznymi problemami, takimi jak aplikacje, dane, wydajność, a nawet pomyślne przejście przez następną rozmowę kwalifikacyjną!
Książka jest przeznaczona dla średniozaawansowanych programistów Pythona.

Cena: 74.00 zł 56.00

Najniższa cena z ostatnich 30 dni przed wprowadzeniem obniżki: 56.00 zł

ebook

Ilość:
Opis produktu
Tytuł
Klasyczne problemy informatyki w Pythonie
Autor
David Kopec
Język
polski
Wydawnictwo
Wydawnictwo Naukowe PWN
Tłumaczenie
Natalia Chounlamany-Turalska
ISBN
978-83-01-20993-3
Rok wydania
2020 Warszawa
Wydanie
1
Liczba stron
250
Format
epub, mobi
Spis treści
podziękowania xv o autorze xvii o ilustracji na okładce xviii wprowadzenie xix 1. Małe problemy 1 1.1. Ciąg Fibonacciego 1 Pierwsza próba rekurencyjna 1 Wykorzystywanie przypadków podstawowych 3 Memoizacja na ratunek 4 Memoizacja automatyczna 5 Uproszczony Fibonacci 6 Generowanie liczb Fibonacciego za pomocą generatora 7 1.2. Trywialna kompresja 7 1.3. Szyfr nie do złamania 12 Przygotowywanie danych 12 Szyfrowanie i deszyfrowanie 13 1.4. Wyznaczanie liczby pi 15 1.5. Wieże Hanoi 16 Modelowanie wież 17 Rozwiązywanie problemu wież Hanoi 18 1.6. Praktyczne zastosowania 19 1.7. Ćwiczenia 20 2. Problemy wyszukiwania 21 2.1. Przeszukiwanie DNA 21 Przechowywanie DNA 21 Przeszukiwanie liniowe 23 Wyszukiwanie binarne 24 Uogólniony przykład 26 2.2. Rozwiązywanie labiryntów 28 Generowanie losowego labiryntu 29 Detale labiryntu 30 Przeszukiwanie w głąb 31 Przeszukiwanie wszerz 35 Algorytm A* 39 2.3. Misjonarze i kanibale 44 Modelowanie problemu 44 Rozwiązywanie problemu 47 2.4. Praktyczne zastosowania 48 2.5. Ćwiczenia 49 3. Problemy spełniania ograniczeń 51 3.1. Budowanie systemu do rozwiązywania problemów spełniania ograniczeń 52 3.2. Problem kolorowania mapy Australii 56 3.3. Problem ośmiu hetmanów 59 3.4. Wykreślanki 61 3.5. SEND + MORE = MONEY 64 3.6. Układ chipów na płytce 66 3.7. Praktyczne zastosowania 66 3.8. Ćwiczenia 67 4. Problemy grafowe 69 4.1. Mapa jako graf 69 4.2. Budowanie szkieletu grafu 72 Stosowanie klas Edge i Graph 76 4.3. Znajdowanie najkrótszej drogi 77 Powrót do przeszukiwania wszerz (BFS) 77 4.4. Minimalizowanie kosztu budowania sieci 79 Stosowanie wag 79 Znajdowanie minimalnego drzewa rozpinającego 83 4.5. Znajdowanie najkrótszych dróg w grafie z wagami 89 Algorytm Dijkstry 89 4.6. Praktyczne zastosowania 94 4.7. Ćwiczenia 95 5. Algorytmy genetyczne 97 5.1. Podstawy biologiczne 97 5.2. Generyczny algorytm genetyczny 98 5.3. Naiwny test 105 5.4. SEND + MORE = MONEY – ciąg dalszy 107 5.5. Optymalizowanie kompresji list 111 5.6. Wyzwania związane z algorytmami genetycznymi 113 5.7. Praktyczne zastosowania 114 5.8. Ćwiczenia 115 6. Algorytm klasteryzacji 117 6.1. Przygotowania 118 6.2. Algorytm klasteryzacji metodą k-średnich 120 6.3. Klasteryzacja gubernatorów według wieku i długości geograficznej 125 6.4. Klasteryzacja albumów Michaela Jacksona według długości 128 6.5. Problemy i rozszerzenia algorytmu klasteryzacji metodą k-średnich 130 6.6. Praktyczne zastosowania 131 6.7. Ćwiczenia 132 7. Dość proste sieci neuronowe 133 7.1. Podłoże biologiczne? 134 7.2. Sztuczne sieci neuronowe 135 Neurony 135 Warstwy 136 Propagacja wsteczna 137 Pełen obraz 141 7.3. Przygotowania 141 Iloczyn skalarny 142 Funkcja aktywacji 142 7.4. Budowanie sieci 142 Implementowanie neuronów 143 Implementowanie warstw 145 Implementowanie sieci 146 7.5. Problemy klasyfikacji 149 Normalizowanie danych 149 Klasyczny zbiór danych iris 150 Klasyfikowanie wina 153 7.6. Przyspieszanie sieci neuronowych 156 7.7. Problemy i rozszerzenia sieci neuronowych 156 7.8. Praktyczne zastosowania 158 7.9. Ćwiczenia 159 8. Przeszukiwanie z przeciwnikiem 161 8.1. Podstawowe elementy gry planszowej 161 8.2. Kółko i krzyżyk 163 Zarządzanie stanem gry kółko i krzyżyk 163 Minimax 166 Testowanie funkcji minimax na grze kółko i krzyżyk 169 Rozwijanie sztucznej inteligencji w grze kółko i krzyżyk 170 8.3. Connect 4 171 Mechanizm gry Connect 4 172 Sztuczna inteligencja w grze Connect 4 176 Poprawianie algorytmu minimax przez redukcję alfa-beta 177 8.4. Inne ulepszenia algorytmu minimax 178 8.5. Praktyczne zastosowania 179 8.6. Ćwiczenia 180 9. Inne problemy 181 9.1. Problem plecakowy 181 9.2. Problem komiwojażera 186 Naiwne podejście 186 Możliwości ulepszenia projektu 190 9.3. Mnemotechniki dla numerów telefonów 191 9.4. Praktyczne zastosowania 193 9.5. Ćwiczenia 194 dodatek A. Glosariusz 195 dodatek B. Dodatkowe materiały 201 B.1. Python 201 B.2. Algorytmy i struktury danych 202 B.3. Sztuczna inteligencja 203 B.4. Programowanie funkcyjne 203 B.5. Projekty open source pomocne w uczeniu maszynowym 204 dodatek C. Krótkie wprowadzenie do adnotacji typów 205 C.1. Czym są adnotacje typów? 205 C.2. Jak wyglądają adnotacje typów? 206 C.3. Do czego przydają się adnotacje typów? 207 C.4. Jakie są wady adnotacji typów? 208 C.5. Zdobywanie dodatkowych informacji 209 indeks 211
Cechy produktu
Dane ogólne
  • Format pliku
  • ebook
  •  
Recenzje

Ten produkt nie ma jeszcze opinii

Twoja opinia

Ocena:
  • Wszystkie pola są wymagane
Zapytaj o produkt

Zobacz także

Kontakt

OSDW Azymut Sp. z o.o.
Gottlieba Daimlera 2
02-460 Warszawa
NIP: 525-21-05-994

(42) 680 44 00 pon.-pt. 8-16
azymut@selly.pl