Chevron Left
Back to Greedy Algorithms, Minimum Spanning Trees, and Dynamic Programming

Learner Reviews & Feedback for Greedy Algorithms, Minimum Spanning Trees, and Dynamic Programming by Stanford University

1,216 ratings

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)....

Top reviews


Jun 29, 2018

Tim Roughgarden is a fantastic teacher! He really cares about explaining in a simple manner and also give you useful hints and advices to dive deeper in all the topics of the course. Thanks, Tim!


Apr 26, 2020

I learned more about Greedy Algorithms and Algorithms to compute MST's and their importance on real world problems. Also I got to start to understand Dynamic Programming in a way I didn't before.

Filter by:

1 - 25 of 143 Reviews for Greedy Algorithms, Minimum Spanning Trees, and Dynamic Programming

By Sachin W

Feb 25, 2019

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.

By Rúben G

Apr 27, 2020

I learned more about Greedy Algorithms and Algorithms to compute MST's and their importance on real world problems. Also I got to start to understand Dynamic Programming in a way I didn't before.

By Huong M L

Apr 29, 2020

I'm finally able to come up with my own dynamic programming solutions after taking this course, something I've never been able to do before, and it's all thanks to professor TIm Roughgarden's amazing and unique approach! Other lectures and articles on the web only list a bunch of DP problems and their corresponding solutions, without actually explaining how you could have arrived at those solutions yourself, but Tim took a different approach and showed you, step by step, how to both come up with a solution and prove its correctness at the same time. Thank you so much, Tim! You rock!

By Fernando L C

Jun 29, 2018

Tim Roughgarden is a fantastic teacher! He really cares about explaining in a simple manner and also give you useful hints and advices to dive deeper in all the topics of the course. Thanks, Tim!

By Nicolas T

Jun 14, 2019

As usual with Stanford and Tim Roughgarden, a high-quality course with an informal style but a lot of rigor. The assignments are challenging but doable. Highly recommended.

By Prince C S

Sep 5, 2021

Great Pace - good examples - always going to the point - clear and providing good information.

By Rishabh T

May 27, 2019

worst teaching skill

By Daniel P

Jan 19, 2017

The best Coursera class I took so far! The instructor has a good pedagogic approach -- for every problem he discusses, he starts with an intuitive explanation illustrated on a simple example, and afterwards provides a rather rigorous justification for the algorithms (omitting only secondary details).

I found the problems challenging, and the quizzes required quite some thought, not only repeating/slightly modifying statements made already in the lectures. This made it feel closer to a real class than the other Coursera courses I took so far.

By Alexander L

Nov 11, 2019

Very interesting. I learned a lot of new things. 5 stars!

Just a few things that could be improved:

-- The video and its audio are not really synchronized (maybe because the video is pretty old)

-- The subtitles are not good. Even the english ones were not written by someone who knows what the professor is talking about...

Nowadays there are better solutions to validate whether someone solved a programming task. and for example just execute the program with test input.

But all in all: Very positive experience.

By Kaan A

Nov 7, 2019

I'm absolutely happy with the time that I spent on this course. Now I finished my third course on the Algorithms Specialization from Tim Roughgarden. I love the instructor the way he speaks is amazing. Zero uhmms absolutely zero schmschm. Amazing! I'm looking forward to start the fourth course of the specialization which is the final one. It's been 2 and a half months since I started the Algorithms Specialization. Thanks for such a great content.

By Janis S

Oct 27, 2020

Very good course. Tim is really good at explaining things in the shortest way possible whilst precisely defining to what extent the algorithm generalises. He's also really motivating. The only thing that could be improved is the subject of hashing. We learn about randomization in hashing but it was never clarified, how we can find the random bias at look up time. Other than that I was completely happy with the course!

By Dhruvesh P

Nov 18, 2017

The course is very detailed and does complete justice to the title. I would call this an intermediate level course and would recommend that this be done after the first two courses in the specialization.

Coming to the quality of lectures. The material was presented in a very logically consistent manner. By far the best lectures on dynamic programming that I've seen.

By Alexey P

Mar 8, 2017

Tim does an excellent job explaining things at depth and at the same time keeping things interesting. The quizes and programming assignments are well thought and carefully balanced vs the material taught. They force you to stretch just a bit beyond the lectures, which is a good thing IMHO.

And there is a wealth of advanced/optional material for the curious.

By Dilyan M

Dec 10, 2018

The course was excellent. I did not have enough time for all the optional videos, but I still feel like I learned a ton and I can always come back to them later, which is great. This specialization feels like it's getting a little easier for me with every course, which means that it's very well constructed and doing what it's supposed to do.

By Damian C

Mar 22, 2018

Excellent Course. I really enjoyed it. Stretched my imagination and analytical capacity to new frontiers. The problems studied during the course stimulate you to learn more about new algorithms and coding, There's so much more to learn now. Many thanks to Professor Roughgarden and his team for making this available. Keep the great work!

By Jonathan M

May 18, 2020

This was more challenging the first two courses in the sequences but after completing it, I feel like my intuition about algorithms has improved. Understanding the greedy and dynamic paradigms opens up a wider range of problems to be solved. The course content does a great job of introducing both of these at a high-level.

By GongPing

Aug 20, 2017

Excellent lectures on Dynamic Programming! The examples chosen in lectures are really typical! I tried to practice on more DP problems on Geeksforgeeks. Surprisingly many DP problems are just extension of the examples gone through in these videos. Reading the CLRS book after watching the lectures become much much easier!

By Sergey T

Jun 28, 2020

This course is great, thanks!

The idea of splitting those 20-30 minutes videos from parts 1 and 2 into smaller ones is great! Also, I loved the idea of 2-3 programming tasks in 1. That's very helpful.

Any way to bring sequence alignment and optimal binary search trees programming assignments in?

By Long N

Feb 28, 2021

One of the most challenging course I've ever taken. Both of the course's algorithms and assignments are advanced levels. It required students understanding the concepts thoroughly, and a creative to solve the assignments. The discussion forum was really helpful to look for hints and ideas.

By Ali İ E

Apr 27, 2022

That was an amazing course and the toughest one so far in the series in my opinion. The programming assignments were relatively easy but the subjects were more complicated than in the previous courses. I'm planning to go through all sections again after a couple of months.

By Ashish D S

Aug 12, 2018

Excellent course, I found this course hard as compared to earlier two courses. Many of the Lectures needs to be viewed twice to understand to my minimum level of satisfaction. Quizzes make sure that you understand concepts well and programming assignments are excellent!

By Ahmad B E

Jun 16, 2017

Great course for who is willing to learn new algorithms and having hard time to learn them alone by reading text box. The explanation is easy and clear. And the material is essential for who want to get started in greedy algorithms and dynamic programming.

By Christian K

Apr 25, 2021

Great course and best computer science instructor I've ever had (can't say enough good things about Tim). The end of the course (dynamic programming) was harder and kicked my butt a little, but I made it out with a much better grasp of the topics.

By Oleksandr S

Feb 17, 2020

It's a hard and challenging course. I'm really excited about the knowledge I gain. The greedy algorithms are really not so easy and you always can make an error. The Union-Find with ranking and Dynamic Programming are the pearl of the Course.

By Anastasia Z

Jan 30, 2018

I really liked this course as well as the first two courses from the algorithms specialization. I agree with other reviewers that this course is more challenging, which is a good thing - I learned a lot and enjoyed solving harder problems.