Algorithmen in Java: Rheinwerk Computing
Autor David Kopecde Limba Germană Paperback – iun 2021
În volumul Algorithmen in Java, subliniem tranziția de la simpla sintaxă a limbajului la aplicarea unor soluții algoritmice consacrate. Lucrarea se concentrează pe implementarea în Java a unor probleme fundamentale de informatică, precum algoritmii de căutare, problemele de optimizare a grafurilor și tehnici de clustering. Această abordare este esențială deoarece permite dezvoltatorilor să înțeleagă nu doar 'cum' să scrie cod, ci 'de ce' anumite structuri sunt mai eficiente în scenarii complexe de calcul. Notăm faptul că David Kopec păstrează aici rigoarea didactică din Computer Science From Scratch, dar orientează conținutul către un nivel intermediar, unde provocările precum problema celor opt dame sau problema rucsacului devin vehicule pentru stăpânirea limbajului. Spre deosebire de Algorithmen in Python, unde accentul cădea pe flexibilitatea sintactică a versiunilor 3.7+, versiunea de față exploatează tipizarea statică și structura orientată pe obiecte specifică Java pentru a construi soluții robuste. Complementar lucrării Algorithmen und Datenstrukturen de Martin Dietzfelbinger, care oferă o bază teoretică și matematică extinsă, volumul lui Kopec este mult mai pragmatic, oferind cod direct implementabil. În timp ce Java von Kopf bis Fuß se concentrează pe fundamentele limbajului pentru începători, Algorithmen in Java presupune deja cunoașterea bazei și trece direct la rezolvarea problemelor clasice de inginerie software, fiind o resursă tehnică de neînlocuit în biblioteca unui programator care dorește să își rafineze logica de programare.
Din seria Rheinwerk Computing
-
Preț: 431.82 lei - 20%
Preț: 481.68 lei - 20%
Preț: 401.23 lei - 20%
Preț: 396.84 lei - 11%
Preț: 590.61 lei - 20%
Preț: 369.79 lei - 20%
Preț: 190.49 lei -
Preț: 235.25 lei - 20%
Preț: 287.87 lei - 20%
Preț: 281.23 lei -
Preț: 534.05 lei - 20%
Preț: 444.57 lei - 20%
Preț: 214.04 lei - 20%
Preț: 434.27 lei -
Preț: 465.29 lei - 20%
Preț: 183.52 lei - 20%
Preț: 356.55 lei - 20%
Preț: 387.29 lei - 20%
Preț: 159.09 lei -
Preț: 316.69 lei - 20%
Preț: 367.57 lei - 20%
Preț: 291.22 lei - 20%
Preț: 467.07 lei -
Preț: 312.12 lei - 20%
Preț: 491.02 lei - 20%
Preț: 170.45 lei - 20%
Preț: 208.17 lei -
Preț: 574.51 lei -
Preț: 194.76 lei -
Preț: 239.34 lei -
Preț: 169.18 lei -
Preț: 242.83 lei -
Preț: 231.86 lei - 20%
Preț: 352.46 lei - 20%
Preț: 648.82 lei - 20%
Preț: 197.94 lei - 20%
Preț: 189.43 lei - 20%
Preț: 188.48 lei - 20%
Preț: 268.48 lei - 20%
Preț: 392.53 lei -
Preț: 327.94 lei -
Preț: 163.85 lei - 20%
Preț: 286.66 lei - 20%
Preț: 220.82 lei - 20%
Preț: 314.80 lei - 20%
Preț: 182.44 lei - 20%
Preț: 252.35 lei - 20%
Preț: 370.30 lei - 20%
Preț: 197.27 lei
Preț: 198.15 lei
Preț vechi: 247.69 lei
-20%
Carte disponibilă
Livrare economică 13-19 octombrie
Livrare express 03-09 octombrie pentru 26.61 lei
Specificații
ISBN-10: 3836284529
Pagini: 333
Dimensiuni: 170 x 228 x 20 mm
Greutate: 0.62 kg
Editura: Rheinwerk Verlag GmbH
Seria Rheinwerk Computing
De ce să citești această carte
Recomandăm această carte programatorilor Java care vor să treacă dincolo de utilizarea bibliotecilor standard și să înțeleagă mecanismele din spatele algoritmilor de căutare, sortare și optimizare. Prin rezolvarea unor probleme clasice, cititorul câștigă o viziune clară asupra eficienței codului și a structurilor de date, elemente critice pentru orice interviu tehnic sau proiect software de anvergură.
Despre autor
David Kopec este un dezvoltator software experimentat, antreprenor și autor din New York, veteran al mai multor startup-uri web. Cu o formație academică solidă obținută la Dartmouth College, unde a studiat Economie, Engleză și Informatică, Kopec s-a specializat în transformarea conceptelor teoretice complexe în proiecte educaționale accesibile. Este cunoscut pentru seria sa de cărți 'Classic Computer Science Problems', tradusă în mai multe limbi, prin care promovează utilizarea tehnologiei pentru îmbunătățirea bunăstării umane și educația tehnică aplicată.
Notă biografică
Cuprins
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
Descriere scurtă
Programmieren will trainiert werden, und Algorithmen gehören zum Rüstzeug dazu. Schlagen Sie zwei Fliegen mit einer Klappe und verbessern Sie Ihre Java-Skills mithilfe klassischer Algorithmen, von der Suche im Binärbaum über k-Means bis zum Rucksackproblem. Dieses Buch ist Grundausbildung für Programmierer und Fundgrube für Coding Workouts zugleich.
Profitieren Sie von der Lehr- und Praxiserfahrung des Autors: David Kopec hat 32 Klassiker der Informatik für Sie herausgesucht, die wichtige Lösungsstrategien zeigen und einen starken Trainingseffekt versprechen. An zahlreichen Code-Beispielen lernen Sie, wie Sie die Algorithmen implementieren und selbst in Algorithmen denken.So wird das Buch zu einer wertvollen Hilfe auf dem Weg zum Profi.
Ideal für alle, die ihre ersten Schritte in der Programmierung hinter sich haben und jetzt voll durchstarten wollen.
- Das Java-Training mit beliebten Klassikern und modernen Algorithmen
- Ideal für Studium, Selbststudium und Coding-Katas
- Backtracking, Acht-Damen-Problem, genetische Algorithmen u. v. m.
- Titel der Originalausgabe: "Classic Computer Science Problems in Java"
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