
Greedy Algorithms, Minimum Spanning Trees, and Dynamic Programming
Stanford Online · View on Coursera ↗
Taught by Tim Roughgarden
Computer ScienceMath and Logic
About the course
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).
The consensus
1 of the 20 reviews we read rated it 3★ or lower, but none of them wrote a comment. This is the most-upvoted review (3 votes).
“One of the best courses to make a student learn DP in a way that enables him/her to think of the subproblems and way to proceed to solving these subproblems. Definitely helpful for me. Thanks.”
Coursera's 4.8 comes from 1,279 ratings. Of those, 0.4% are 1–2★.
Starisk reads the reviews learners voted most helpful, and weights each by the square root of its votes: a review with 80 upvotes counts about five times one with 2. Unvoted reviews are not skipped out of laziness — by this model they carry no evidence that other students endorsed them.
That measures what the most-endorsed reviews say, not “true quality.” The rating distribution above is the whole population, so you can see the sample next to it.
Reviews read on 23 Oct 2026.Read them on Coursera ↗