Join me to stay up-to-date and get my new articles delivered to your inbox by subscribing here.
To me, its content is priceless. For sure, this extraordinary book comes at a cost, you can purchase the textbook in either hardcover or electronic format. But, there is another completely FREE option. Yes, it is too good to be true but it is true. 🙂 Two free courses (Part I and Part II) were prepared by the book’s authors. Of course, there is no certification but the courses’ content is completely open to everyone at no cost. The courses offer more than 100 video lecture segments that are integrated with the text, extensive online assessments, and large-scale discussion forums that have proven so valuable.
When it comes to the book, it is the leading textbook on algorithms today and is widely used in colleges and universities worldwide. It surveys the most important computer algorithms currently in use and provides a full treatment of data structures and algorithms for sorting, searching, graph processing, and string processing.
Part I of the course focuses on elementary data structures, sorting, and searching. Topics include union−find, binary search, stacks, queues, bags, insertion sort, selection sort, shell sort, quicksort, 3-way quicksort, mergesort, heapsort, binary heaps, binary search trees, red−black trees, separate-chaining and linear-probing hash tables, Graham scan, and KD-trees.
Part II of the course focuses on graph and string-processing algorithms. Topics include depth-first search, breadth-first search, topological sort, Kosaraju−Sharir, Kruskal, Prim, Dijkstra, Bellman−Ford, Ford−Fulkerson, LSD radix sort, MSD radix sort, 3-way radix quicksort, multiway tries, ternary search tries, Knuth−Morris−Pratt, Boyer−Moore, Rabin–Karp, regular expression matching, run-length coding, Huffman coding, LZW compression and Burrows−Wheeler transform. Part II also introduces reductions and intractability, including the P = NP problem.
Robert Sedgewick has been a Professor of Computer Science at Princeton University since 1985, where he was the founding Chairman of the Department of Computer Science. He has held visiting research positions at Xerox PARC, Institute for Defense Analyses, and INRIA, and is a member of the board of directors of Adobe Systems. Professor Sedgewick’s research interests include analytic combinatorics, design and analysis of data structures and algorithms, and program visualization. His landmark book, Algorithms, now in its fourth edition, has appeared in numerous versions and languages over the past thirty years.
You can review the bio from Princeton University.
Kevin Wayne is the Phillip Y. Goldman Senior Lecturer in Computer Science at Princeton University, where he has been teaching since 1998. He received a PhD in operations research and industrial engineering from Cornell University. His research interests include the design, analysis, and implementation of algorithms, especially for graphs and discrete optimization.
Sedgewick and Wayne’s primary goal is to introduce the most important algorithms in use today to as wide an audience as possible. These algorithms are generally ingenious creations that, remarkably, can each be expressed in just a dozen or two lines of code. As a group, they represent the problem-solving power of the amazing scope. They have enabled the construction of computational artifacts, the solution of scientific problems, and the development of commercial applications that would not have been feasible without them.
They cover basic abstract data types, sorting algorithms, searching algorithms, graph processing, and string processing. They keep the material in an algorithmic context, describing data structures, algorithm design paradigms, reduction, and problem-solving models. They cover classic methods that have been taught since the 1960s and new methods that have been invented in recent years.