Buch, Deutsch, 333 Seiten, Format (B × H): 170 mm x 228 mm, Gewicht: 624 g
Reihe: Rheinwerk Computing
Das Buch zum Programmieren trainieren. 32 Klassiker der Informatik, von Rucksackproblem bis Neuronale Netze
Buch, Deutsch, 333 Seiten, Format (B × H): 170 mm x 228 mm, Gewicht: 624 g
Reihe: Rheinwerk Computing
ISBN: 978-3-8362-8452-3
Verlag: Rheinwerk Verlag GmbH
Aus dem Inhalt:
- Zum Einstieg: einfache Verschlüsselung, Fibonacci-Folge, Türme von Hanoi
- Suchalgorithmen: DNS-Suche, Labyrinthe u.v.m.
- Bedingungserfüllung: Wortsuchrätsel, Acht-Damen-Problem u.v.m.
- Grafen und kürzeste Wege
- k-Means-Clustering
- Einfache neuronale Netze
- Minimax: Tic-tac.toe, Vier gewinnt
Autoren/Hrsg.
Fachgebiete
- Mathematik | Informatik EDV | Informatik Programmierung | Softwareentwicklung Programmier- und Skriptsprachen
- Mathematik | Informatik EDV | Informatik Programmierung | Softwareentwicklung Algorithmen & Datenstrukturen
- Mathematik | Informatik EDV | Informatik Programmierung | Softwareentwicklung Programmierung: Methoden und Allgemeines
Weitere Infos & Material
Vorwort. 13
Einleitung. 15
1. Kleine Aufgaben. 23
1.1. Die Fibonacci-Folge. 23
1.2. Triviale Komprimierung. 31
1.3. Unknackbare Verschlüsselung. 36
1.4. Pi berechnen. 40
1.5. Die Türme von Hanoi. 42
1.6. Anwendungen im Alltag. 46
1.7. Übungsaufgaben. 47
2. Suchaufgaben. 49
2.1. DNA-Suche. 49
2.2. Labyrinthe lösen. 59
2.3. Missionare und Kannibalen. 82
2.4. Anwendungen im Alltag. 89
2.5. Übungsaufgaben. 89
3. Bedingungserfüllungsprobleme. 91
3.1. Ein Framework für Bedingungserfüllungsprobleme schreiben. 92
3.2. Die Landkarte Australiens einfärben. 98
3.3. Das Acht-Damen-Problem. 101
3.4. Wortsuche. 104
3.5. SEND+MORE=MONEY. 112
3.6. Leiterplatten-Layout. 115
3.7. Bedingungserfüllungsproblem im Alltag. 115
3.8. Übungsaufgaben. 116
4. Graphenprobleme. 117
4.1. Eine Landkarte als Graph. 117
4.2. Ein Framework für Graphen schreiben. 120
4.3. Den kürzesten Pfad finden. 128
4.4. Die Kosten für den Aufbau des Netzwerks minimieren. 131
4.5. Den kürzesten Pfad in einem gewichteten Graphen finden. 143
4.6. Graphenprobleme im Alltag. 150
4.7. Übungsaufgaben. 151
5. Genetische Algorithmen. 153
5.1. Biologischer Hintergrund. 153
5.2. Ein generischer genetischer Algorithmus. 155
5.3. Ein naiver Test. 164
5.4. Wiedersehen mit SEND+MORE=MONEY. 167
5.5. Listenkomprimierung optimieren. 172
5.6. Kritik an genetischen Algorithmen. 176
5.7. Genetische Algorithmen im Alltag. 178
5.8. Übungsaufgaben. 179
6. k-Means-Clustering. 181
6.1. Vorbereitungen. 182
6.2. Der k-Means-Clustering-Algorithmus. 185
6.3. Gouverneure nach Alter und Längengrad clustern. 193
6.4. Michael-Jackson-Alben nach Länge clustern. 199
6.5. k-Means-Clustering-Probleme und -Erweiterungen. 201
6.6. k-Means-Clustering im Alltag. 202
6.7. Übungsaufgaben. 203
7. Einfache neuronale Netzwerke. 205
7.1. Biologische Grundlagen?. 206
7.2. Künstliche neuronale Netzwerke. 207
7.3. Vorbereitungen. 215
7.4. Das Netzwerk aufbauen. 218
7.5. Klassifikationsprobleme. 227
7.6. Neuronale Netzwerke beschleunigen. 238
7.7. Probleme und Erweiterungen neuronaler Netzwerke. 239
7.8. Neuronale Netzwerke im Alltag. 241
7.9. Übungsaufgaben. 242
8. Adversarial Search. 243
8.1. Grundkomponenten von Brettspielen. 243
8.2. Tic Tac Toe. 245
8.3. Vier gewinnt. 260
8.4. Minimax-Verbesserungen über die Alpha-Beta-Suche hinaus. 272
8.5. Adversarial Search im Alltag. 273
8.6. Übungsaufgaben. 274
9. Weitere Aufgaben. 277
9.1. Das Rucksackproblem. 277
9.2. Das Problem des Handlungsreisenden. 284
9.3. Merkhilfen für Telefonnummern. 292
9.4. Anwendungen im Alltag. 296
9.5. Übungsaufgaben. 297
Anhang. 299
A. Interview mit Brian Goetz 301. 299
B. Glossar 317. 299
C. Weiterführende Ressourcen 323. 299
Index. 327