Data Structures & Algorithm Analysis
by Clifford A. Shaffer

This is the homepage for the paper (and PDF) version of the book Data Structures & Algorithm Analysis by Clifford A. Shaffer. The most recent version is Edition 3.2.0.10, dated March 28, 2013.

You probably don't want to be here. March 2013 was rather a long time ago in the life of a Computer Science textbook. The paper/PDF version is no longer actively maintained or updated. While the PDF remains available (and you can still even buy the paper copy), I now consider this version to be OBSOLETE. At this point, I recommend that anyone interested in adopting or otherwise using this book move to our online version, known as the OpenDSA project. OpenDSA provides a better experience than paper or PDF, with many visualizations and interactive exercises along with the text. See our OpenDSA Project homepage for more details. See here for a brief discussion of how this online textbook and the OpenDSA project came to be.

This material is distributed free for educational use. There are both Java C++ versions available. Note: As of Edition 3.2.0.8 (dated February 7, 2013), all internal cross references (pages in the index, section references in the text, sections in the table of contents, figure references, footnotes, and so on) are hypertexted. Just hover the curser over the appropriate spot on the page and click on it.

Click here for the Java version of Edition 3.2. (Last updated: 03/28/2013)
Click here for the C++ version of Edition 3.2. (Last updated: 03/28/2013)

The print version is published by Dover Publications. The list price is $29.95. You might wish to check resellers such as Amazon or Barnes & Noble to get the cheapest price. The last time I checked, Amazon was selling copies for around $16.

Java cover C++ cover

Errata for Edition 3.2. (Last updated: 05/16/2014)

Previous publication history:

Online sourcecode from the Third Edition text is available:

Coursenotes for the JAVA version are available. (Last updated: 09/21/2011)

A collection of programming assignments that I have used is available. (Last updated: 03/28/2013)

Note: Sourcecode and course notes from the first and second editions of the text are now obsolete, and I do not support them.

For comprehensive information on Algorithm Visualization, including an extensive online catalog of available AVs, please visit the AlgoViz Portal.

Here is a source of information on Design Patterns.

Archive of the various textbook updates (since the original vesion of the Third Edition)

Return to Cliff Shaffer's homepage.