Introduction to the design & analysis of algorithms - Levitin, Anany. (Pearson, 2012)