About
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.
This course was also taught as part of the Singapore-MIT Alliance (SMA) programme as course number SMA 5503 (Analysis and Design of Algorithms).
Course Homepage 6.046J / 18.410J Introduction to Algorithms (SMA 5503) Fall 2005
Course features at MIT OpenCourseWare page: *Syllabus *Calendar *Readings *Assignments *Exams *Download Course Materials
Complete MIT OCW video collection at MIT OpenCourseWare - VideoLectures.NET
Videos

Lecture 3: Divide-and-Conquer: Strassen, Fibonacci, Polynomial Multiplication
Feb 10, 2009
·
54435 views

Lecture 8: Universal Hashing, Perfect Hashing
Feb 10, 2009
·
39330 views

Lecture 2: Asymptotic Notation, Recurrences, Substitution, Master Method
Feb 10, 2009
·
127163 views

Lecture 7: Hashing, Hash Functions
Feb 10, 2009
·
43214 views

Lecture 15: Dynamic Programming, Longest Common Subsequence
Feb 10, 2009
·
80742 views

Lecture 4: Quicksort, Randomized Algorithms
Feb 10, 2009
·
62816 views

Lecture 13: Amortized Algorithms, Table Doubling, Potential Method
Feb 10, 2009
·
39916 views

Lecture 22: Advanced Topics
Feb 10, 2009
·
18169 views

Lecture 1: Administrivia, Introduction, Analysis of Algorithms, Insertion Sort, ...
Feb 10, 2009
·
133507 views

Lecture 9: Relation of BSTs to Quicksort, Analysis of Random BST
Feb 10, 2009
·
22776 views

Lecture 24: Advanced Topics (cont.)
Feb 10, 2009
·
10448 views

Lecture 11: Augmenting Data Structures, Dynamic Order Statistics, Interval Trees...
Feb 10, 2009
·
31335 views

Lecture 19: Shortest Paths III: All-pairs Shortest Paths, Matrix Multiplication,...
Feb 10, 2009
·
33787 views

Lecture 23: Advanced Topics (cont.)
Feb 10, 2009
·
10728 views

Lecture 10: Red-black Trees, Rotations, Insertions, Deletions
Feb 10, 2009
·
152788 views

Lecture 12: Skip Lists
Feb 10, 2009
·
47282 views

Lecture 16: Greedy Algorithms, Minimum Spanning Trees
Feb 10, 2009
·
57687 views

Lecture 5: Linear-time Sorting: Lower Bounds, Counting Sort, Radix Sort
Feb 10, 2009
·
40212 views

Lecture 17: Shortest Paths I: Properties, Dijkstra's Algorithm, Breadth-first Se...
Feb 10, 2009
·
64822 views

Lecture 6: Order Statistics, Median
Feb 10, 2009
·
31739 views

Lecture 18: Shortest Paths II: Bellman-Ford, Linear Programming, Difference Cons...
Feb 10, 2009
·
105515 views

Lecture 14: Competitive Analysis: Self-organizing
Feb 10, 2009
·
13704 views

Lecture 25: Advanced Topics (cont.), Discussion of Follow-on Classes
Feb 10, 2009
·
10761 views