Data Structures and Algorithm Analysis in C++ - Weiss, Mark Allen (2009)