Harvey M. Deitel and
Paul J. Deitel, C++, How to program, fifth
edition, Prentice Hall, 2005, other editions equally good.
Donald E. Knuth, Sorting
and Searching, second edition, The Art of Computer Programming,
volume 3, Addison-Wesley, 1998.
Bjarne Stroustrup,
The C++ programming
language, third edition, Addison-Wesley, 1997.
Mark Allen Weiss,
Data structures and algorithm analysis in C++, third edition, Addison-Wesley, 2006 (the
second edition should be adequate. Avoid the first edition).
Patrick Henry Winston,
On to C++, Addison-Wesley, 1994.