MIT OpenCourseWare

Introduction to Algorithms

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. (from ocw.mit.edu )


Professor Charles Leiserson and Professor Erik Demaine,
Computer science

Record ID


Lecture 01 - Administrivia; Introduction; Analysis of Algorithms, Insertion Sort, Mergesort