Foundations Of Algorithms Using Java Pseudocode by Richard Neapolitan, Richard E. Neapolitan & Kumarss Naimipour