Data Structures and Algorithms in C++ - Goodrich, Michael T.; Tamassia, Roberto; Mount, David M. (John Wiley & Sons, 2004)