An experienced programmer is in a sense like concert musician--she has mastered a certain repertoire of pieces which she is prepared to play at any time. For the programmer, the repertoire comprises a set of abstract data types with which she is familiar and which she is able to use in her programs as the need arises.
The chapters following this present a basic repertoire of abstract data types. In addition to defining the abstractions, we show how to implement them in C++ and we analyze the performance of the algorithms.
The repertoire of basic abstract data types has been designed as a hierarchy of C++ classes. This section presents an overview of the class hierarchy and lays the groundwork for the following chapters.