Analysis of algorithms an active learning approach - McConnell, Jeffrey J. (Johns and Bartlet, 2008)