An Introduction to Data Structures wtih Applications - Tremblay, Jean-Paul. (2002)