Algorithms in Java, Third Edition, Parts 1-4: Fundamentals, Data Structures, Sorting, Searching

From the Publisher: For the first time, Robert Sedgewick's popular textbook on algorithms and data structures is available in a Java version. Tim Lindholm (co-author of The Java Virtual Machine Specification) and Sedgewick have developed new Java implementations that both express the presented methods in a concise and direct manner, and also provide students with the practical means to test them on real applications. This particular book, Parts 1-4, represents a substantial update.