MIT OpenCourseWare
  • OCW home
  • Course List
  • about OCW
  • Help
  • Feedback
  • Support MIT OCW

6.046J / 18.410J Introduction to Algorithms, Fall 2001

Cover of textbook, Introduction to Algorithms, Second Edition by Cormen, Leiserson, Rivest, and Stein.
Cover of 6.046J textbook, Introduction to Algorithms, Second Edition, by Cormen, Leiserson, Rivest, and Stein. (Image courtesy of MIT Press.)

Highlights of this Course

6.046J is the header course for the department's "Theoretical Computer Science" concentration. This course has virtually all of its course materials online, including complete sets of lecture notes and problem sets. The course textbook, Introduction to Algorithms, Second Edition, is co-written by Professor Charles Leiserson.

6.046J is taught concurrently at MIT in the United States and as part of the Singapore-MIT Alliance (SMA) program in Singapore. All aspects of the course- lectures, recitations, problem sets, and exams- are essentially the same in the two countries.

»  Participate in the online discussion group for this course.

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.



Prof. Erik Demaine
Prof. Charles Leiserson
Prof. Lee Wee Sun

Course Meeting Times

Two sessions / week
1.5 hours / session




Send feedback about OCW or this course.