next up previous
Next: Web Added-Value Education Up: About this Book Previous: Prerequisites

For the Instructor

As mentioned above, this book is intended primarily as a textbook for a Freshman-Sophomore Data Structures (CS2) course using C++ as its implementation language. This book contains many C++-code and pseudo-code fragments, and over 500 exercises (with roughly 200 having solutions that are posted at the instructor's area of the web site), which are divided with roughly 40% being reinforcement exercises, 40% being creativity exercises, and 20% being projects. The code fragments have all been successfully compiled and tested on major C++ compilers including GNU g++, Borland C++-Builder, and Microsoft Visual C++.

This book is also structured to allow the instructor a great deal of freedom in how to organize and present the material. For example, we include optional material, that is somewhat mathematically more advanced, in several chapters. Such optional sections are indicated with a star (*). In the table below, we illustrate possible options for this book in a CS2 course.


Chapter Possible Options
 1. C++ Programming skip if students know it already
 2. Object-Oriented Design skip if students know it already
 3. Analysis Techniques omit justification methods
 4. Stacks, Queues & Recursion provide alternate case study
 5. Vectors, Lists, and Sequences omit amortized analysis
 6. Trees omit general trees
 7. Priority Queues omit bottom-up heap construction, locators
 8. Dictionaries omit skip lists, locators
 9. Search Trees omit (2,4) and red-black trees
10. Sorting, Sets, and Selection omit sorting lower bound
11. Text Processing omit tries, compression, & LCS
12. Graphs omit directed graphs


next up previous
Next: Web Added-Value Education Up: About this Book Previous: Prerequisites