Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Stanford University

Greedy Algorithms, Minimum Spanning Trees, and Dynamic Programming

Stanford University via Coursera


The primary topics in this part of the specialization are: greedy algorithms (scheduling, minimum spanning trees, clustering, Huffman codes) and dynamic programming (knapsack, sequence alignment, optimal search trees).


  • Week 1
    • Two motivating applications; selected review; introduction to greedy algorithms; a scheduling application; Prim's MST algorithm.
  • Week 2
    • Kruskal's MST algorithm and applications to clustering; advanced union-find (optional).
  • Week 3
    • Huffman codes; introduction to dynamic programming.
  • Week 4
    • Advanced dynamic programming: the knapsack problem, sequence alignment, and optimal binary search trees.

Taught by

Tim Roughgarden


4.8 rating at Coursera based on 1243 ratings

Start your review of Greedy Algorithms, Minimum Spanning Trees, and Dynamic Programming

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.

Someone learning on their laptop while sitting on the floor.