2
This is an intermediate algorithms course with an emphasis on teaching techniques for the design and analysis of efficient algorithms, emphasizing methods of application.
FREE
This course includes
Hours of videos
666 years, 7 months
Units & Quizzes
24
Unlimited Lifetime access
Access on mobile app
Certificate of Completion
Topics include divide-and-conquer, randomization, dynamic programming, greedy algorithms, incremental improvement, complexity, and cryptography.
Course Currilcum
- Overview, Interval Scheduling Unlimited
- Divide & Conquer: Convex Hull, Median Finding Unlimited
- Divide & Conquer: FFT Unlimited
- Divide & Conquer: van Emde Boas Trees Unlimited
- Amortization: Amortized Analysis Unlimited
- Randomization: Matrix Multiply, Quicksort Unlimited
- Randomization: Skip Lists Unlimited
- Randomization: Universal & Perfect Hashing Unlimited
- Augmentation: Range Trees Unlimited
- Dynamic Programming: Advanced DP Unlimited
- Dynamic Programming: All-Pairs Shortest Paths Unlimited
- Greedy Algorithms: Minimum Spanning Tree Unlimited
- Incremental Improvement: Max Flow, Min Cut Unlimited
- Incremental Improvement: Matching Unlimited
- Linear Programming: LP, reductions, Simplex Unlimited
- Complexity: P, NP, NP-completeness, Reductions Unlimited
- Complexity: Approximation Algorithms Unlimited
- Complexity: Fixed-Parameter Algorithms Unlimited
- Synchronous Distributed Algorithms: Symmetry-Breaking. Shortest-Paths Spanning Trees Unlimited
- Asynchronous Distributed Algorithms: Shortest-Paths Spanning Trees Unlimited
- Cryptography: Hash Functions Unlimited
- Cryptography: Encryption Unlimited
- Cache-Oblivious Algorithms: Medians & Matrices Unlimited
- Cache-Oblivious Algorithms: Searching & Sorting Unlimited