Programming Problems: Advanced Algorithms (Volume 2), Green, Bradley, 9781484964.