A Practical Introduction to
Data Structures and Algorithm Analysis
by Clifford A. Shaffer
The third edition of the C++ version of the textbook is currently underway. It should be available sometime in 2008. An initial version of the Source Code is ready now, and I recommend that this be used in preference to the code published with the 1st or second editions. Here is a zipped version of all the source code files.
C++ Version (second edition)
(©2001 Prentice Hall, ISBN 0-13-028446-7)
- Coursenotes (.ppt)
- Source Code. However, I highly recommend using the 3rd edition version. It is improved to be clearer, has some bugs fixed, and is better documented.
- Prentice Hall's Companion Website
Java Version (©1998 Prentice Hall, ISBN 0-13-660911-2)
C++ Version (first edition)
(©1997 Prentice Hall, ISBN 0-13-190752-2)
Please note that the 4th printing and thereafter is an updated version
with corrections. However, the first edition of the C++ version is
fairly obsolete now, and I certainly recommend using one of the more
recent editions.
- I will no longer post the source code or course notes for the first edition, since I do not support that code any longer. Please use a later version.
An Instructors Manual containing solutions to the exercises is available from Prentice Hall. It is available only to instructors who adopt the book for a course. Please do not contact me about the Instructors Manual, since I do not distribute it. Instructors should contact their Prentice Hall representative for a copy.
For a comprehensive overview of data structures and algorithm visualizations, including an extensive online catalog of available visualizations, please visit our Algorithm and Data Structures Visualization Wiki.
Here is a source of information on Design Patterns.
Return to Cliff Shaffer's homepage.