A Laboratory Course in C++ Data Structures, Second Edition