This document is an instructorís manual to accompany Introduction to Algorithms,
Second Edition, by Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest,
and Clifford Stein. It is intended for use in a course on algorithms. You might
also find some of the material herein to be useful for a CS 2-style course in data
structures.
Unlike the instructorís manual for the first edition of the textówhich was organized
around the undergraduate algorithms course taught by Charles Leiserson at MIT
in Spring 1991ówe have chosen to organize the manual for the second edition
according to chapters of the text. That is, for most chapters we have provided a
set of lecture notes and a set of exercise and problem solutions pertaining to the
chapter. This organization allows you to decide how to best use the material in the
manual in your own course.
We have not included lecture notes and solutions for every chapter, nor have we
included solutions for every exercise and problem within the chapters that we have
selected. We felt that Chapter 1 is too nontechnical to include here, and Chapter 10 consists of background material that often falls outside algorithms and datastructures courses. We have also omitted the chapters that are not covered in the
courses that we teach: Chapters 18ñ20 and 28ñ35, as well as Appendices AñC;
future editions of this manual may include some of these chapters. There are two
reasons that we have not included solutions to all exercises and problems in the
selected chapters. First, writing up all these solutions would take a long time, and
we felt it more important to release this manual in as timely a fashion as possible.
Second, if we were to include all solutions, this manual would be longer than the
text itself!
We have numbered the pages in this manual using the format CC-PP, where CC
is a chapter number of the text and PP is the page number within that chapterís
lecture notes and solutions. The PP numbers restart from 1 at the beginning of each
chapterís lecture notes. We chose this form of page numbering so that if we add
or change solutions to exercises and problems, the only pages whose numbering is
affected are those for the solutions for that chapter. Moreover, if we add material
for currently uncovered chapters, the numbers of the existing pages will remain
unchanged.