Summary: The author introduces a broad variety of important and useful algorithms, discussing both their essential characteristics and individual subtleties, explaining both their underlying theory and their application in practice. His strategy is to implement and test the algorithms, to experiment with their variants, to discuss their operation on small examples, and to try them out on larger, real-world examples. In this version, the algorithms are described in Java. A wor ...show moreld-renowned expert on algorithm analysis, the author has taken great pains to make his book current and comprehensive. With numerous illustrations, exercises, and pedagogical aids, his book also is uniquely attentive to student learning needs.