Awesome course! Professor Roughgarden is fantastic. The material was appropriately challenging. Perfect amount of rigor. Only one minor squabble: the hash problem set is terribly misleading.
The course was very interesting. As a person who struggles with problem-solving, I found this course very helpful because the professor's ideas are well explained. It makes me to learn more.
by Madhurya m•
by Clayton W•
by Felice F•
by Yisheng Y•
by Ahmad e D•
by Jingyuan W•
by Sergey T•
This course was useful to me, thanks. As usual, I liked lectures and programming assignments provided, except for week 4.
I didn't like week 4 materials. It was a huge disappointment to me when the theory about hashing appeared to be too 'theoretical' with absolutely no code at all. It's just some high concept maths and nothing more. It is a real disaster if you are a 'doer' because you'll probably get almost nothing from 4th-week lectures and will be ought to learn about hashing somewhere else. This comes to a question of whether you need to learn hash tables here (and pay your money) or not. So if you have never encountered hash tables in your life, you might want to learn it before you take this course. In that case, consider it as a requirement for your enrollment.
by Christopher E•
The only reason this is not a 5-star review is because of the Week 4 programming assignment. The point of Week 4 is to demonstrate the usefulness of using a hash table when frequent look-ups are necessary. However, the constants inherent to the assignment problem make the suggested algorithm take anywhere from 30 min to hours. Meanwhile, there is another algorithm that can accomplish the task in mere seconds, but this is not apparent without scouring the message boards for help. I feel it would be better to either rethink the assignment to bring it more in line with the point of the teaching material, or deliver some instruction on the actually useful algorithm, which is fascinating in its own right.
Otherwise, this course is excellent as usual.
by Gonzalo G A E•
In general, the specialization is great (it's challenging, full of interesting material, and the Prof. is interesting yet light to watch for hours in video). However, two of the programming exercises in this course seemed required solutions that were not related to the covered topics and for which the week's material provided sub-optimal (hence ultra slow) solutions. That was a bit frustrating. Nonetheless, it forced me to explore more about the algorithms, data structures and other solutions.
Still a great and challenging course!
by Sivaramakrishnan S•
Algorithms part of the course was phenomenal as always. But the Data Structure side of the course was (a bit of shuffling around the point?) little less engaging. I realize that DS is as important as Algorithms but is certainly not as fun to teach as Algorithms. Maybe the assignments and Quizzes could be restructured to make DS lessons more engaging. Just my 2 cents, otherwise Prof. Tim was cool as always!
by Ahmad B E•
Great course for computer scientists. It is easy to understand but it takes too much time to be completed. The video lectures were long and full of too much explanation. And the week 4 programming assignment took very long running time to complete using the algorithm specified in the course but less time using other algorithms.
by Li-Pu C•
I would say it would be a little bit too hard for people that do not major in computer science, and programmed less before.
Even though the professor gives the lecture well, but the input size of the text file is often too large. I think it'd be better to provide the assignment easier.
by Bianca D•
Great course; especially on Data Structures and when certain ones are appropriate. I do wish the final exam solutions would be posted after completing the exam successfully in the same way the problem set solutions, hints and comments are provided.
by Jingxuan W•
the later graph algorithms are implemented rather cursory. It is quite hard for us to implement it at home using a "big idea" as given in the video. I wish the instructor could give us some intuitions of how Java, C++, or Python handle the case.
by Nikola G•
Great course but needs restructuring. The videos of how an algorithm works come after extensive discussion on what its action's running times are. If this were flipped and we learned how it works before running times it would be more intuitive.
by Marcus H•
Great course! The programming assignment for Week 4 was a bit demoralizing, though. I am very certain I had the right answer, but had to implement another solution that did not involve Hash Tables in order for it to process in < 24 hours.
by Georgios K•
Great course, the first exercise was a little bit hard but the material is useful, if you read the relevant book then the course is even easier.
Last I want to mention that writing the code in Python makes the course easier.
by Sai R•
The material was a little light and far fewer video quiz questions to test our understanding of the material. I also tried to test myself on BFS and DFS by doing online quizzes like geeksforgeeks - bombed really hard.
by L H•
There is very little hand-holding in this course and no code provided. This really challenges you to implement the ideas taught in the most efficient and appropriate manner possible.