Foundations of algorithms - Neapolitan, Richard (Jones & Bartlett, 2011)