Suchen und Finden
Vorwort
5
Inhaltsverzeichnis
13
I Arithmetik, Variablen, Wertzuweisungen
19
1 Dreiecksfläche
20
2 Datumsarithmetik
23
2.1 Wochentag
23
2.2 Osterdatum
24
3 Dutzend, Schock, Gros
26
II Kontrollstrukturen
29
4 Median
30
5 Mäxchen
33
6 Flaggen
35
7 Rechtecke
39
8 S-Bahn in Byteburg
44
9 Newton-Verfahren
49
9.1 Approximation der Quadratwurzel
49
9.2 Kubikwurzel
50
10 Zahlenbasis
52
11 Messwerte
56
12 Reihen
60
12.1 Exponentialfunktion
60
12.2 Hyperbolischer Sinus
62
12.3 Umkehrfunktion des hyperbolischen Sinus
63
13 Potenzieren
64
III Algorithmen
67
14 Kompression
68
15 Perfekte und andere Zahlen
73
15.1 Perfekte Zahlen
73
15.2 Befreundete Zahlen
77
15.3 Quersumme
79
15.4 Lychrel-Zahlen
80
15.5 Fröhliche Zahlen
84
16 Binomialkoeffizienten
87
16.1 Iterative Berechnung
88
16.2 Rekursive Berechnung
89
16.3 Pascal'sches Dreieck
90
16.4 Optimierte Berechnung des Pascal'schen Dreiecks
93
17 Teppiche
95
18 Primzahlen
99
18.1 Exakter Primzahltest
99
18.2 Probabilistischer Primzahltest
101
18.3 Primzahlen-Iterator
103
18.4 Goldbach-Vermutung
105
18.5 Generator zu einer Primzahl
106
18.6 Zufallszahlengenerator
108
19 Permutationen
111
19.1 Permutationsvektoren
111
19.2 Permutationsmatrizen
112
19.3 Sudoku
114
20 Kommentar-Zapper
119
20.1 Blockkommentare
119
20.2 Zeilenkommentare
124
21 Mustervergleich
130
21.1 Jokerzeichen
130
21.2 Super-Joker
131
IV Klassen
133
22 Punkte und Dreiecke
134
22.1 Punkte
134
22.2 Dreiecke
137
23 Intervalle
143
24 Uhrzeit
149
25 Große Ganzzahlen
154
26 Polynom
159
26.1 Polynomklasse
159
26.2 Division von Polynomen
164
27 Boolean-Arrays
167
27.1 Direkte Umsetzung
168
27.2 Logische Operatoren
177
28 Josephusring
183
29 E-Camel
188
29.1 Kamele und Karawanen
188
29.2 Robuste Implementierung
192
V Interfaces und Vererbung
197
30 Mobiles
198
30.1 Sterne und Stäbchen
198
30.2 Glitzersterne
203
31 Kobolde
206
31.1 Zahlen-Kobolde
206
31.2 Zähe Kobolde
208
31.3 Kobold-Verhalten
210
31.4 Ehrliche Kobolde
214
32 Widerstandsnetzwerke
217
32.1 Konstante Widerstände
217
32.2 Potenziometer
223
33 Stoppuhren
227
33.1 Basisklasse
227
33.2 Zurücksetzen
229
33.3 Pauseknopf
231
34 Spielkarten
234
35 Zahlenfolgen
243
35.1 Konkrete Folgen
243
35.2 Filter
246
36 Chiffren
252
36.1 Substitutionschiffren
253
36.2 Xor-Substitution
254
36.3 Additive Substitution
256
36.4 Stromchiffren
256
36.5 Diffie-Hellman
258
37 Bäume
263
38 Physikalische Größen
270
38.1 Längen
270
38.2 Allgemeine Größen
273
38.3 Zusammengesetzte Einheiten
276
VI Containerklassen
281
39 Buchstabensammlungen
282
39.1 Sammlung beliebiger Buchstaben
282
39.2 Sammlung ohne Duplikate
289
39.3 Sammlung als Collection
291
40 Vorlesungsverzeichnis
297
41 Römische Zahlen
300
41.1 Klasse für römische Zahlen
300
41.2 Stringdarstellung
303
41.3 Vergleich
305
41.4 Einsatz eines Aufzählungstyps
308
42 Zählerlisten
314
VII I/O, Netzwerke, Nebenläufigkeit
323
43 Textdateien
324
43.1 Textzeilen-Iterator
324
43.2 Zeilentransformator
328
43.3 Textdatei-Trenner
330
44 I/O-Filter
333
44.1 Textposition
333
44.2 Zeichen umdrehen
337
45 Filesystemsuche
340
45.1 Rekursiver Directory-Durchlauf
340
45.2 Directory-Tiefe
343
45.3 Dubletten
343
45.4 Umfang von Verzeichnissen
345
46 Bitstreams
347
46.1 Einfache Bitstreams
347
46.2 Beliebig lange Bitstreams
352
47 Tittle-Tattle
356
48 Watchdog
361
49 Verkehrsüberwachung
366
50 Nameservice
373
50.1 Nameserver
373
50.2 Persistenter Server
377
50.3 Nameclient
378
51 Vorlesungen
381
51.1 Mathe-Vorlesung
382
51.2 Observer mit mehreren Threads
386
51.3 Wait & Notify
392
VIII Generics
395
52 Objektpaare
396
52.1 Generische Klasse
396
52.2 Vergleich von Paaren
398
53 Generische Methoden
400
53.1 No Null
400
53.2 Median
401
53.3 Klon-Armee
403
54 Relationen
405
54.1 Aufgezählte Relation
405
54.2 Reflexivität, Symmetrie und Transitivität
408
54.3 Verkettete Relation
409
55 Ring-Queue
412
56 Listen und Warteschlangen
417
56.1 Geordnete Listen
417
56.2 Geordnete Warteschlangen
420
56.3 Iteratoren
422
57 Algebraische Strukturen
425
57.1 Gruppe, Ring und Körper
426
57.2 Der Körper Z2
427
57.3 Aufzählungstyp
430
57.4 Der Körper Zp
431
57.5 Polynomringe
434
IX Anhang
437
A Glossar
438
B Schwerpunkte der Aufgaben
448
C Konventionen
452
D Programmfragmente
459
Literaturverzeichnis
466
Alle Preise verstehen sich inklusive der gesetzlichen MwSt.