Neben dem Beherrschen einer Programmiersprache ist die Wahl geeigneter Datenstrukturen und Algorithmen essentiell wichtig für das Gelingen eines Entwicklungsprojektes. Auf Basis der Sprache C++ haben Harald Ress und Günter Viebeck daher eine Sammlung wesentlicher Lösungen erstellt. Nach einem kurzen Einstieg in die Sprache C++ sowie der Berechnung und dem Vergleich von Komplexitäten gehen die beiden Autoren ab dem zweiten Kapitel auf die verschiedenen Strukturfamilien ein. Den Anfang machen Tabellen sowie die Suche, das Sortieren und Hashverfahren rund um Tabellen. Den Abschluss des Kapitels bilden -- wie für jedes Kapitel -- verschiedene Aufgaben zur Selbstkontrolle. Nach den Tabellen geht es mit Strings und der Erkennung von Mustern in diesen Strings weiter. Das vierte Kapitel behandelt Stacks und Queues, ergänzt um Informationen zur Anwendung dieser Strukturen. Ähnlich wichtig sind Listen, die im fünften Kapitel behandelt werden. Hierbei gehen die Autoren auch auf die Suche in und die Sortierung von Listen ein. Mit dem sechsten Kapitel nimmt die Komplexität zu. Ress und Viebeck behandeln Trees, Sets, Dictionaries, Priority Queues, Huffman-Bäume sowie verschiedenste Graphen. Den Abschluss bilden Dateien im neunten Kapitel. Hier gehen die Autoren noch einmal gesondert auf das Stream-Konzept von C++ ein und zeigen unter anderem, wie optimal extern sortiert wird. In seiner Qualität und seinem Umfang gefällt Datenstrukturen und Algorithmen sehr gut. Der Leser erhält wertvolle Hinweise für seine Arbeit mit der Sprache C++. Die beigelegte CD mit allen vorgestellten Algorithmen und Anwendungsbeispielen rundet das Buch gelungen ab. --Frank Müller Quelle:
|