Focusing on the fundamentals of data organization and retrieval, this textbook introduces essential algorithms and techniques for solving algorithmic problems, particularly in the context of modern parallel processing. It balances theoretical concepts with practical applications, covering a range of topics from basic data structures like arrays and linked lists to advanced graph algorithms and optimization strategies. The authors also address contemporary issues such as algorithm engineering and memory hierarchies, reflecting the shift towards performance-critical applications in teaching algorithms.
Kurt Mehlhorn Livres





Algorithms are central to nontrivial computer applications, making algorithmics a vital area of computer science. Every computer scientist and programmer should be familiar with essential algorithmic tools, including data organization and retrieval structures, commonly used algorithms, and techniques for modeling and solving algorithmic problems. This concise introduction targets students and professionals with programming and basic mathematical knowledge. Chapters cover a range of topics, such as arrays, linked lists, hash tables, sorting, priority queues, graph representation, and optimization. Algorithms are presented with clearly defined invariants and insights into contemporary trends like algorithm engineering and memory hierarchies. The authors utilize visuals, descriptive language, and high-level pseudocode, followed by efficient implementation details in languages like C++ and Java. Drawing from extensive teaching experience, the authors provide a clear presentation enriched with examples, illustrations, informal explanations, exercises, and real-world connections. Each chapter follows a consistent structure: problem motivation, key applications, simple solutions, and more advanced mathematical treatments, including theorems and proofs. Concluding sections offer insights into ongoing research, generalizations, and advanced solutions.
Die Analyse und der Entwurf effizienter Algorithmen stehen im Mittelpunkt dieser dreibändigen Reihe, die sich mit verschiedenen Aspekten der Informatik beschäftigt. Der erste Band behandelt grundlegende Themen wie Sortieren und Suchen, während die folgenden Bände sich mit Graphenalgorithmen, NP-Vollständigkeit sowie algorithmischer Geometrie und Paradigmen befassen. Die Inhalte sind so strukturiert, dass sie unabhängig voneinander gelesen werden können, und bieten aktuelle Algorithmen und deren Effizienzanalysen, die größtenteils aus den letzten zwei Jahrzehnten stammen.
Der Entwurf und die Analyse von Datenstrukturen und effizienten Algorithmen haben in den letzten Jahren stark an Bedeutung gewonnen, da der Algorithmus das zentrale Konzept der Informatik darstellt und Effizienz direkt mit Kosten verbunden ist. Der Inhalt ist in drei Bände und neun Kapitel gegliedert. Band 1 behandelt Sortieren und Suchen, Band 2 fokussiert auf Graphenalgorithmen und NP-Vollständigkeit, während Band 3 sich mit mehrdimensionalem Suchen, algorithmischer Geometrie und algorithmischen Paradigmen beschäftigt. Die Bände 2 und 3 bauen auf Band 1 auf, sind jedoch unabhängig voneinander lesbar. Ein grundlegendes Verständnis der algorithmischen Prinzipien, wie sie in Kapitel I oder anderen Standardwerken vermittelt werden, ist ausreichend. Die spezifischen Voraussetzungen für die einzelnen Bände sind in den Vorworten aufgeführt. In allen Bänden werden wichtige effiziente Algorithmen für zentrale Probleme vorgestellt und analysiert. Die Effizienz wird anhand der Laufzeit auf einem realistischen Rechenmodell gemessen, das in Kapitel I beschrieben wird. Die meisten Algorithmen sind in den letzten Jahren entwickelt worden, und viele Inhalte sind jünger als 10 Jahre. Ziel ist es, den Leser auf den aktuellen Stand der Forschung zu bringen.