# MIT 6.046J 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.

- Kind: Talk
- Year: 1999
- By: MIT OpenCourseWare
- Genres: Education, Science
- Archive: [Internet Archive](https://archive.org/details/MIT6.046JF05)
- Licence or status: [CC BY-NC-SA 3.0](http://creativecommons.org/licenses/by-nc-sa/3.0/us/) (as the archive states it)
- Who can watch: Tweens profiles and older (the archive gives no rating; placed by Invisible Network from its collection and subjects)

[Watch now](https://invisiblenetwork.ai/watch/archive/ia/MIT6.046JF05?play=1)
