Text this: Algorithms in Java: Parts 1-4 Fundamentals, Data Structures, Sorting, Searching