# 6.046J / 18.410J Introduction to Algorithms, Fall 2001

## Highlights of this Course

*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.