"This is no ordinary textbook on algorithms and data structures. In fact, it is not really a textbook at all, but rather an extraordinarily powerful and practical reference book. It is perhaps the most thorough and complete catalog of fundamental algorithms that I have ever seen. The book is extremely well organized, and has been carefully designed to provide practical help for a student or developer with a specific problem at hand who is seeking the most appropriate data structure or abstract data type. Everything that one might wish for with this goal in mind has been provided, including a top down guide that provides an organizational map of the myriad data structures to choose from, comparisons between competing choices, short descriptions for quick reference, longer explanations for detailed understanding, performance analyses, correctness arguments, plus a CD with full Java implementations. This is a tremendously valuable practical resource."
Robert Schapire, Professor of Computer Science, Princeton University, Princeton, USA
|
"The Goldmans' new book is a tour de force of data structures and associated algorithms, accomplishing far more than any single author could hope to achieve. Theory and practice are represented in complementary fashion, with clever mechanisms such as 'correctness highlights' and tables illustrating space and time complexity tradeoffs between different implementation options. The book is extremely well designed as a reference with value that extends well beyond Java programmers. I can imagine that the decision tree inside the front cover will be placed in a prominent location in many a graduate student and developor work spaces. I intend to make sure my students consult it before launching into any significant implementation."
Ellen Witte Zegura, Professor and Associate Dean, Division Chair, Computing Science and Systems Division, Georgia Institute of Technology, Atlanta, USA
|
|
"In this impressive book, [the authors] combine practical guidance on how to select and use important ADTs and data structures with a clear presentation of the underlying theory. I do not know of any other book that is able to simultaneously address both application and theory so well. One of my favorite features of this book is that for each data structure given, there is a presentation of competing data structures and how they compare. This allows the reader to quickly place the new data structure into context as well as to find the best data structure for a given application."
Avrim Blum, Professor of Computer Science, Carnegie Mellon University, Pittsburgh, Pennsylvania, USA
|
"This book presents a principled approach to covering many practical
Abstract Data Types. It is nicely modular and neither glosses
over all-important implementation details nor gets lost in them. Having
variations for different usage patterns is especially useful. I highly
recommend this book both for practitioners and for students learning
data structures and algorithms."
Andries van Dam, Thomas J. Watson, Jr. University Professor of
Technology and Education and Professor of Computer Science, Brown
University, Providence, Rhode Island, USA
|
"This is the first book I know of that teaches the theory and practice
of algorithm and data structure design in a clear and comprehensive
way. For each topic it presents a motivating example, a clear ADT,
various implementations, and a guide for comparing different
implementations. Each implementation is followed by a detailed and
clear theoretical analysis, a complete Java implementation, and a
discussion of the used design patterns. This book is a thorough textbook
as well as a great reference book!"
Monika Henzinger, Director of Research at Google and Professor of Computer and Communication Science at École Polytechnique
Fédérale de Lausanne, Switzerland
|