Exercises from the book How to Think Like A Computer Scientist in Java