Algorithms, 4th Edition
essential information that
every serious programmer
needs to know about
algorithms and data structures
Textbook.
The textbook Algorithms, 4th Edition by Robert Sedgewick and Kevin Wayne surveys the most important algorithms and data structures in use today. The broad perspective taken makes it an appropriate introduction to the field. The textbook is organized into seven chapters:- Chapter 1: Fundamentals considers a scientific and engineering basis for comparing algorithms and making predictions.
- Chapter 2: Sorting considers several classic sorting algorithms, including insertion sort, mergesort, and quicksort. It also includes a binary heap implementation of a priority queue.
- Chapter 3: Searching includes several classic symbol table implementations, including binary search trees, red-black trees, and hash tables.
- Chapter 4: Graphs surveys the most important graph processing problems, including depth-first search, breadth-first search, minimum spanning trees, and shortest paths.
- Chapter 5: Strings investigates specialized algorithms and data structures for string processing, including string sorting, substring search, tries, regular expressions, and data compression.
- Chapter 6: Geometry introduces several classical solutions to geometric problems, including search, intersection, and Euclidean graphs.
- Chapter 7: Context places the material in the previous chapters in context with respect to systems programming, scientific computing, commercial applications, and operations research. It also introduces intractability.
Booksite.
Reading a book and surfing the web are two different activities: This booksite is intended for your use while online (for example, while programming and while browsing the web); the textbook is for your use when initially learning new material and when reinforcing your understanding of that material (for example, when reviewing for an exam). The booksite consists of the following elements:- Excerpts. A condensed version of the text narrative for reference while online.
- Exercise solutions. Solutions to selected exercises.
- Java code. Here is a list of the algorithms and clients in this textbook.