Data structures and algorithms in C++ - Drozdek, Adam (Brooks/Cole, 2001)