Analysis of algorithms : an active learning approach - McConnell, Jeffrey J. (Jones and Bartlett, 2008)