Explore Algorithm Design & Analysis
| Description | This course is an introduction to mathematical modeling of computational problems, as well as common algorithms, algorithmic paradigms, and data structures used to solve these problems. It emphasizes the relationship between algorithms and programming and introduces basic performance measures and analysis techniques for these problems. |
| Instructor | Prof. Erik Demaine, Dr. Jason Ku, Prof. Justin Solomon |
| Videos | 21 |
| Link | ▶ View Course |
| Description | An advanced course in algorithm design covering theoretical and practical techniques. It explores topics like data structures, amortized analysis, online and randomized algorithms, linear and semidefinite programming, approximation methods, graph algorithms, and computational geometry, helping learners develop strong problem-solving skills and deeper understanding of complex algorithmic concepts. |
| Platform | Harvard University |
| Videos | 25 |
| Link | ▶ Watch Lectures |
| Description | This is an intermediate algorithms course with an emphasis on teaching techniques for the design and analysis of efficient algorithms, emphasizing methods of application. Topics include divide-and-conquer, randomization, dynamic programming, greedy algorithms, incremental improvement, complexity, and cryptography. |
| Instructor | Prof. Erik Demaine, Prof. Srini Devadas, Prof. Nancy Lynch |
| Videos | 24 |
| Link | ▶ View Course |
| Description |
An intermediate algorithms course by Robert Sedgewick and Kevin Wayne focusing on problem solving and programming. It covers data structures, sorting, searching, graph and string algorithms, and real-world applications. The course builds skills for efficient programming, computational thinking, and tackling complex problems across diverse domains. |
| Instructor | Robert Sedgewick, Kevin Wayne |
| Modules | 13 (70 Videos) |
| Link | Enroll |
| Description |
This course covers the essential information that every serious programmer needs to know about algorithms and data structures, with emphasis on applications and scientific performance analysis of Java implementations. Part I covers elementary data structures, sorting, and searching algorithms. Part II focuses on graph- and string-processing algorithms. All the features of this course are available for free. |
| Instructor | Robert Sedgewick, Kevin Wayne |
| Modules | 14 |
| Link | Enroll |