Data structures and algorithms in C++ - Drozdek, Adam (Cengage Learning, 2013)