Exercises from How To Think Like A Computer Scientist