Knuth's multivolume analysis of algorithms is widely
recognized as the definitive description of classical
computer science. The first three volumes of this work
have long comprised a unique and invaluable resource in
programming theory and practice. Scientists have
marveled at the beauty and elegance of Knuth's analysis,
while practicing programmers have successfully applied
his "cookbook" solutions to their day-to-day problems.
The level of these first three volumes has remained so
high, and they have displayed so wide and deep a
familiarity with the art of computer programming, that a
sufficient "review" of future volumes could almost be:
"Knuth, Volume n has been published." --Data Processing
Digest Knuth, Volume n has been published, where n = 4A.
In this long-awaited new volume, the old master turns
his attention to some of his favorite topics in
broadword computation and combinatorial generation
(exhaustively listing fundamental combinatorial objects,
such as permutations, partitions, and trees), as well as
his more recent interests, such as binary decision
diagrams. The hallmark qualities that distinguish his
previous volumes are manifest here anew: detailed
coverage of the basics, illustrated with well-chosen
examples; occasional forays into more esoteric topics
and problems at the frontiers of research; impeccable
writing peppered with occasional bits of humor;
extensive collections of exercises, all with solutions
or helpful hints; a careful attention to history;
implementations of many of the algorithms in his classic
step-by-step form. There is an amazing amount of
information on each page. Knuth has obviously thought
long and hard about which topics and results are most
central and important, and then, what are the most
intuitive and succinct ways of presenting that material.
Since the areas that he covers in this volume have
exploded since he first envisioned writing about them,
it is wonderful how he has managed to provide such
thorough treatment in so few pages. --Frank Ruskey,
Department of Computer Science, University of Victoria
The book is Volume 4A, because Volume 4 has itself
become a multivolume undertaking. Combinatorial
searching is a rich and important topic, and Knuth has
too much to say about it that is new, interesting, and
useful to fit into a single volume, or two, or maybe
even three. This book alone includes approximately 1500
exercises, with answers for self-study, plus hundreds of
useful facts that cannot be found in any other
publication. Volume 4A surely belongs beside the first
three volumes of this classic work in every serious
programmer's library. |
|