YouTube Tools

MIT 6.006 Introduction to Algorithms: study plan and how long it takes

The MIT OpenCourseWare playlist is 32 videos and 35.3 hours long. Here's how long it takes at different paces, a week-by-week schedule built from the real videos, and a planner that turns it into your own daily plan.

32 videos · 35.3 hours · MIT OpenCourseWare

MIT 6.006 is MIT's core undergraduate algorithms course. The Spring 2020 version, released on MIT OpenCourseWare, covers data structures, sorting, graph algorithms and dynamic programming, with lecture notes, problem sets and quizzes available on the OCW site.

The playlist mixes 21 lectures (about 19.4 hours) with problem sessions and quiz reviews. The structure follows the real course: three blocks, each ending in a quiz, which makes a natural study plan.

Who it's for: Students and self-learners who know basic programming (the course uses Python) and some discrete maths, and want a rigorous university-level algorithms course.

How long does it take?

The full playlist is 35.3 hours across 32 videos. Here's roughly how many days that is at different daily watch times and speeds, counting video time only:

Days to finish the playlist by daily watch time and playback speed
Daily timeAt 1xAt 1.5xAt 2x
30 min a day71 days48 days36 days
1 h a day36 days24 days18 days
2 h a day18 days12 days9 days

Make your own schedule

The playlist link is already filled in. Press Plan, set how much time you have each day and your speed, and you'll get a day-by-day schedule with a finish date and a calendar file. It reads the live playlist, so new videos are included.

Week-by-week schedule

A sample plan at 1 hour a day and normal speed, using whole videos so none is split across days. That's 5 weeks in total. For a different pace, start date or speed, use the planner above.

Week 1Videos 1–7 · 7h 8m
  1. Day 1 · 46m

    • 11. Algorithms and Computation46m
  2. Day 2 · 50m

    • 22. Data Structures and Dynamic Arrays50m
  3. Day 3 · 1h 27m

    • 3Introduction to Algorithms - Problem Session 1: Asymptotic Behavior of Functions and Double-ended...1h 27m
  4. Day 4 · 53m

    • 43. Sets and Sorting53m
  5. Day 5 · 53m

    • 54. Hashing53m
  6. Day 6 · 1h 28m

    • 6Problem Session 2 (MIT 6.006 Introduction to Algorithms, Spring 2020)1h 28m
  7. Day 7 · 52m

    • 75. Linear Sorting52m
Week 2Videos 8–14 · 7h 51m
  1. Day 8 · 1h 26m

    • 8Problem Session 31h 26m
  2. Day 9 · 51m

    • 96. Binary Trees, Part 151m
  3. Day 10 · 54m

    • 107. Binary Trees, Part 2: AVL54m
  4. Day 11 · 1h 30m

    • 11Problem Session 41h 30m
  5. Day 12 · 51m

    • 128. Binary Heaps51m
  6. Day 13 · 53m

    • 139. Breadth-First Search53m
  7. Day 14 · 1h 26m

    • 14Quiz 1 review1h 26m
Week 3Videos 15–21 · 7h 37m
  1. Day 15 · 52m

    • 1510. Depth-First Search52m
  2. Day 16 · 58m

    • 1611. Weighted Shortest Paths58m
  3. Day 17 · 1h 28m

    • 17Problem Session 51h 28m
  4. Day 18 · 58m

    • 1812. Bellman-Ford58m
  5. Day 19 · 57m

    • 1913. Dijkstra57m
  6. Day 20 · 1h 26m

    • 20Problem Session 71h 26m
  7. Day 21 · 57m

    • 2114. APSP and Johnson57m
Week 4Videos 22–28 · 8h
  1. Day 22 · 1h 23m

    • 22Quiz 2 Review1h 23m
  2. Day 23 · 57m

    • 2315. Dynamic Programming, Part 1: SRTBOT, Fib, DAGs, Bowling57m
  3. Day 24 · 59m

    • 2416. Dynamic Programming, Part 2: LCS, LIS, Coins59m
  4. Day 25 · 1h 35m

    • 25Problem Session 81h 35m
  5. Day 26 · 1h 4m

    • 2617. Dynamic Programming, Part 3: APSP, Parens, Piano1h 4m
  6. Day 27 · 1h 4m

    • 2718. Dynamic Programming, Part 4: Rods, Subset Sum, Pseudopolynomial1h 4m
  7. Day 28 · 59m

    • 2819. Complexity59m
Week 5Videos 29–32 · 4h 45m
  1. Day 29 · 1h 25m

    • 29Problem Session 91h 25m
  2. Day 30 · 1h 24m

    • 30Quiz 3 Review1h 24m
  3. Day 31 · 56m

    • 3120. Course Review56m
  4. Day 32 · 59m

    • 3221. Algorithms—Next Steps59m

Study plan, phase by phase

Video numbers are positions in the playlist. To schedule just one phase, enter its numbers in the planner's From and To fields.

  1. 01

    Block 1: data structures and sorting

    Videos 1–14 · 14h 59m

    Algorithms and computation, dynamic arrays, sets and sorting, hashing, linear sorting, binary trees and AVL trees, binary heaps and BFS, with problem sessions 1 to 4 and the Quiz 1 review.

  2. 02

    Block 2: graph algorithms

    Videos 15–22 · 8h 59m

    Depth-first search, weighted shortest paths, Bellman-Ford, Dijkstra, all-pairs shortest paths and Johnson's algorithm, with problem sessions and the Quiz 2 review.

  3. 03

    Block 3: dynamic programming and complexity

    Videos 23–30 · 9h 27m

    Four dynamic programming lectures built around the SRTBOT framework, then complexity, with problem sessions and the Quiz 3 review.

  4. 04

    Course review and next steps

    Videos 31–32 · 1h 55m

    A full course review and a final lecture on where to go next in algorithms.

Tips for finishing

  • Short on time? The 21 numbered lectures are 19.4 hours on their own. Tick off the problem sessions and quiz reviews in the playlist length calculator and the planner will schedule lectures only.
  • Do the problem sets from the OCW site between blocks. The problem sessions make much more sense after you've tried them.
  • Watch lectures at 1.25x; the pace is deliberate and the board work is easy to follow.

Frequently asked questions

How long does it take to finish MIT 6.006 Introduction to Algorithms?

The playlist has 32 videos and 35.3 hours of content. At 1 hour a day that's about 36 days at normal speed, or 24 days at 1.5x. At 2 hours a day it's about 18 days.

Is MIT 6.006 good for beginners?

It's an introductory algorithms course, but it assumes you can program, ideally in Python, and know some discrete maths and proofs. If you're new to programming, CS50x is a better first course.

Should I watch the problem sessions?

If you're doing the problem sets, yes: they walk through problems like the ones you'll be solving. If you only want the concepts, the lectures alone cover them.

More study plans

See all 166 study plans

Tools for any playlist