Schaum's Outline of Software Engineering & Leiss - Programmer's Companion to Algorithm Analysis Taylor 2007