John Decker's C++ Data Structures Work.