Home » Courses » Electrical Engineering and Computer Science » Design and Analysis of Algorithms » Lecture Videos
Lecture 1: Overview, Interval Scheduling
Lecture 2: Divide & Conquer: Convex Hull, Median Finding
Lecture 3: Divide & Conquer: FFT
Lecture 4: Divide & Conquer: van Emde Boas Trees
Lecture 5: Amortization: Amortized Analysis
Lecture 6: Randomization: Matrix Multiply, Quicksort
Lecture 7: Randomization: Skip Lists
Lecture 8: Randomization: Universal & Perfect Hashing
Lecture 9: Augmentation: Range Trees
Lecture 10: Dynamic Programming: Advanced DP
Lecture 11: Dynamic Programming: All-Pairs Shortest Paths
Lecture 12: Greedy Algorithms: Minimum Spanning Tree
Lecture 13: Incremental Improvement: Max Flow, Min Cut
Lecture 14: Incremental Improvement: Matching
Lecture 15: Linear Programming: LP, reductions, Simplex
Lecture 16: Complexity: P, NP, NP-completeness, Reductions
Lecture 17: Complexity: Approximation Algorithms
Lecture 18: Complexity: Fixed-Parameter Algorithms
Lecture 19: Synchronous Distributed Algorithms: Symmetry-Breaking. Shortest-Paths Spanning Trees
Lecture 20: Asynchronous Distributed Algorithms: Shortest-Paths Spanning Trees
Lecture 21: Cryptography: Hash Functions
Lecture 22: Cryptography: Encryption
Lecture 23: Cache-Oblivious Algorithms: Medians & Matrices
Lecture 24: Cache-Oblivious Algorithms: Searching & Sorting