Foundations Of Algorithms Using C++ P by Richard E. Neapolitan