Introduction to Algorithms
- Free
- No certificate
6.006 is MIT's introductory algorithms course, and the spring 2020 edition taught by Erik Demaine, Jason Ku and Justin Solomon is published on OpenCourseWare with twenty lecture videos. The course covers elementary data structures and algorithmic approaches to classical problems, and stresses the link between algorithms and programming. The lectures begin with algorithms and computation, data structures and dynamic arrays, sets and sorting, hashing and linear sorting. They then turn to binary trees and AVL trees, binary heaps, breadth-first and depth-first search, weighted shortest paths with Bellman-Ford, Dijkstra, all-pairs shortest paths and Johnson's algorithm.
Four lectures develop dynamic programming, from Fibonacci and DAGs through longest common subsequence, coin problems, rod cutting and subset sum, and the series closes with complexity and a course review. Materials include lecture notes, three quizzes and a final exam with solutions, practice problems, and the problem sets with solutions. The syllabus notes that written material is distributed as lecture and recitation notes and that the CLRS textbook is a useful but not required reference. Everything is free to use under the OpenCourseWare Creative Commons licence, with no account or certificate.
What you’ll learn
- Model computational problems mathematically and measure algorithm performance
- Use dynamic arrays, hash tables, binary search trees, AVL trees and binary heaps
- Sort with comparison-based and linear-time methods
- Search graphs with BFS and DFS and compute shortest paths with Bellman-Ford, Dijkstra and Johnson
- Design dynamic programming solutions using the SRTBOT framework
- Recognise the basics of computational complexity
Who it’s for
Programmers who already know a language such as Python and want a rigorous, proof-oriented algorithms course; not a first programming course.
Source: MIT Open Learning (opens in a new tab) · Verified · Report a change
More free MIT courses
Every MIT course we have verified, with cost and certificate terms compared.
Computer ScienceAll free computer science courses
Free and free-to-audit computer science courses from every provider, ranked.