MIT 6.046J Design and Analysis of Algorithms: study plan and how long it takes
The MIT OpenCourseWare playlist is 34 videos and 39.5 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.
34 videos · 39.5 hours · MIT OpenCourseWare
MIT 6.046J is the follow-on to 6.006 and covers advanced algorithm design: divide and conquer (including FFT), amortized analysis, randomization, augmented data structures, greedy algorithms and MST, network flow and matching, NP-completeness, approximation and fixed-parameter algorithms, distributed algorithms, cryptography and cache-oblivious algorithms.
The playlist mixes lectures and recitations from Spring 2015, with lecture notes and problem sets on MIT OpenCourseWare.
Who it's for: Students who have finished an introductory algorithms course like MIT 6.006 and are comfortable with proofs.
How long does it take?
The full playlist is 39.5 hours across 34 videos. Here's roughly how many days that is at different daily watch times and speeds, counting video time only:
| Daily time | At 1x | At 1.5x | At 2x |
|---|---|---|---|
| 30 min a day | 79 days | 53 days | 40 days |
| 1 h a day | 40 days | 27 days | 20 days |
| 2 h a day | 20 days | 14 days | 10 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 · 8h 6m
Day 1 · 1h 24m
- 11. Course Overview, Interval Scheduling1h 24m
Day 2 · 1h 21m
- 22. Divide & Conquer: Convex Hull, Median Finding1h 21m
Day 3 · 54m
- 3R1. Matrix Multiplication and the Master Theorem54m
Day 4 · 1h 21m
- 43. Divide & Conquer: FFT1h 21m
Day 5 · 31m
- 5R2. 2-3 Trees and B-Trees31m
Day 6 · 1h 20m
- 64. Divide & Conquer: van Emde Boas Trees1h 20m
Day 7 · 1h 16m
- 75. Amortization: Amortized Analysis1h 16m
Week 2Videos 8–14 · 8h 21m
Day 8 · 1h 22m
- 86. Randomization: Matrix Multiply, Quicksort1h 22m
Day 9 · 40m
- 9R4. Randomized Select and Randomized Quicksort40m
Day 10 · 1h 21m
- 107. Randomization: Skip Lists1h 21m
Day 11 · 1h 22m
- 118. Randomization: Universal & Perfect Hashing1h 22m
Day 12 · 52m
- 12R5. Dynamic Programming52m
Day 13 · 1h 25m
- 139. Augmentation: Range Trees1h 25m
Day 14 · 1h 20m
- 1410. Dynamic Programming: Advanced DP1h 20m
Week 3Videos 15–21 · 8h 6m
Day 15 · 1h 22m
- 1511. Dynamic Programming: All-Pairs Shortest Paths1h 22m
Day 16 · 1h 22m
- 1612. Greedy Algorithms: Minimum Spanning Tree1h 22m
Day 17 · 22m
- 17R6. Greedy Algorithms22m
Day 18 · 1h 23m
- 1813. Incremental Improvement: Max Flow, Min Cut1h 23m
Day 19 · 1h 23m
- 1914. Incremental Improvement: Matching1h 23m
Day 20 · 51m
- 20R7. Network Flow and Matching51m
Day 21 · 1h 22m
- 2115. Linear Programming: LP, reductions, Simplex1h 22m
Week 4Videos 22–28 · 7h 52m
Day 22 · 1h 25m
- 2216. Complexity: P, NP, NP-completeness, Reductions1h 25m
Day 23 · 46m
- 23R8. NP-Complete Problems46m
Day 24 · 1h 21m
- 2417. Complexity: Approximation Algorithms1h 21m
Day 25 · 1h 18m
- 2518. Complexity: Fixed-Parameter Algorithms1h 18m
Day 26 · 32m
- 26R9. Approximation Algorithms: Traveling Salesman Problem32m
Day 27 · 1h 18m
- 2719. Synchronous Distributed Algorithms: Symmetry-Breaking. Shortest-Paths Spanning Trees1h 18m
Day 28 · 1h 12m
- 2820. Asynchronous Distributed Algorithms: Shortest-Paths Spanning Trees1h 12m
Week 5Videos 29–34 · 7h 4m
Day 29 · 50m
- 29R10. Distributed Algorithms50m
Day 30 · 1h 22m
- 3021. Cryptography: Hash Functions1h 22m
Day 31 · 1h 24m
- 3122. Cryptography: Encryption1h 24m
Day 32 · 50m
- 32R11. Cryptography: More Primitives50m
Day 33 · 1h 20m
- 3323. Cache-Oblivious Algorithms: Medians & Matrices1h 20m
Day 34 · 1h 18m
- 3424. Cache-Oblivious Algorithms: Searching & Sorting1h 18m
Tips for finishing
- Plan two or three videos a week and work through the problem sets on OCW; the maths is the real time cost.
- Do MIT 6.006 first. 6.046 assumes you know its data structures and graph algorithms.