Title Algorithms and Data Structures: The Basic Toolbox
Author(s) Kurt Mehlhorn and Peter Sanders
Publisher: Springer; 2008 edition (November 19, 2010)
Paperback 300 pages
eBook PDF files
Algorithms are at the heart of every nontrivial computer application, and algorithmics is a modern and active area of computer science. Every computer scientist and every professional programmer should know about the basic algorithmic toolbox: structures that allow efficient organization and retrieval of data, frequently used algorithms, and basic techniques for modeling, understanding and solving algorithmic problems.
This book is a concise introduction addressed to students and professionals familiar with programming and basic mathematical language. Individual chapters cover arrays and linked lists, hash tables and associative arrays, sorting and selection, priority queues, sorted sequences, graph representation, graph traversal, shortest paths, minimum spanning trees, and optimization.
The algorithms are presented in a modern way, with explicitly formulated invariants, and comment on recent trends such as algorithm engineering, memory hierarchies, algorithm libraries and certifying algorithms. The authors use pictures, words and high-level pseudocode to explain the algorithms, and then they present more detail on efficient implementations using real programming languages like C++ and Java.
About the Authors
Prof. Kurt Mehlhorn was appointed a Fellow of the ACM (1999) “for important contributions in complexity theory and in the design, analysis, and practice of combinatorial and geometric algorithms.” A Professor of Computer Science at Saarland University since 1975, and a director of the Max-Planck-Institut für Informatik in Saarbrücken.
Prof. Peter Sanders is a Professor of Computer Science at the University of Karlsruhe. A leading researcher in the area of theoretical and experimental algorithm analysis, in particular related to efficient algorithms for parallel processing and communication in networks, his responsibilities include organizing the European Symposium on Algorithms in Karlsruhe in 2008.