The main source for material is my lecture notes below in a draft form.
For the textbooks, the following are recommended but not required:
Data Structures and Algorithm Analysis in C++,
by M. A. Weiss, and
Introduction to Algorithms, by Cormen, Leiserson, Rivest, Stein.