Java Coding Problems: Become an expert Java programmer by solving over 250 brand-new, modern, real-world problems - Leonard (IEEE, 2003)