Fundamentals Of Discrete Structures by Gary M. Weiss & Damian M. Lyons