Data structures and algorithms in C++ - Goodrich, Michael T. (J. Wiley & Sons, 2004)