Algorithms, data structures, and problem solving with C++ - Weiss, Mark Allen (Addison-Wesley, 1996)