2/22593
label Cursuri autorenew 2025-09-29, 16:59 history_edu Charles E. Leiserson
By Charles E. Leiserson - Massachusetts Institute of Technology
Licence:

Course Description:
This course teaches techniques for the design and analysis of efficient algorithms, emphasizing methods useful in practice. Topics covered include: sorting; search trees, heaps, and hashing; divide-and-conquer; dynamic programming; amortized analysis; graph algorithms; shortest paths; network flow; computational geometry; number-theoretic algorithms; polynomial and matrix calculations; caching; and parallel computing.
Lectures:






Lecture 1 - Analysis of Algorithms









Lecture 2 - Asymptotic Notation and Recurrences









Lecture 3 - Divide and Conquer









Lecture 4 - Quicksort









Lecture 5 - Sorting Lower Bounds and Linear-Time Sorting









Lecture 6 - Order Statistics









Lecture 7 - Hashing I









Lecture 8 - Hashing II









Lecture 9 - Randomly Built Binary Search Trees









Lecture 10 - Balanced Search Trees









Lecture 11 - Augmenting Data Structures











Lecture 12 - Skip Lists









Lecture 13 - Amortized Analysis









Lecture 14 - Competitive Analysis









Lecture 15 - Dynamic Programming









Lecture 16 - Greedy Algorithms (and Graphs)









Lecture 17 - Shortest Paths I









Lecture 18 - Shortest Paths II









Lecture 19 - Shortest Paths III









Lecture 20 - Advanced Topics









Lecture 21 - Advanced Topics (cont.)









Lecture 22 - Advanced Topics (cont.)









Lecture 23 - Advanced Topics (cont.)




Source: http://academicearth.org/courses/introduction-to-algorithms