Excellent Course for anyone looking to expertise Graph Algorithm. Professor's explained each problem and algorithm in a very easy to learn approach. Grades are tough and yet func to get challenged.
Good balance between theory and practice. The assignments are well thought to measure the understanding of videos, which I had to watch many times to grasp the hidden tips from the instructor.
by Shuo Z•
I can only give this two stars at most.
The lecturers are just like reading the PPT without any heuristic teaching approaches.
The assignments make me desperate, always show very poor feedback message -- "Wrong answer", even the cases failed because of performance issue.
The starter files given from the assignment are inconsistent with the pdf description. It's so confusing.
Couldn't get any help from forums.
Course instructors did not reply my questions on a discussion forum! I did not have any help from them, they are very passive.
by Andrey T•
The course is too shallow - amount of topics discusses is quite small. Practice tasks are boring - implement pseudocode given in lectures. No quizzes. In particular you can see that it is a bad course, if you compare it to the previous 2 courses in the specialization. I'm agree with other people posting in forums about that.
Wasted time, could spend that month more productively. Not going to continue passing other future courses.
by Jonathan O•
This course was an exceptional installment to this Algorithms track. While the problems in this course required less creativity to answer than did those of the antecedent courses, they did test the student's ability to logically, cleanly, and efficiently apply the algorithms and ideas presented in lecture. As always, the instruction was stellar and every piece of pertinent information for answering all problems was included in the instructions. Excellent course.
by Andrey K•
The course itself is wonderful. I liked the challenges provided in this a lot. The information is provided in very short, clear and full enough manner (all claims are proved and proved are great and very clean). There was only one thing that disappointed me a bit: on the last week I couldn't find the tasks description and had to download it somewhere from the Internet thankfully the forum's students.
by Priyansh B•
This course took a bit more time than previous courses of the specialisation. It taught me everything about basics of algorithms. The last week was optional but it was the best, toughest and the best week of the course. It taught about fast traversal of graph and that concept of contraction hierchies was awesome and mind messing too.
by MD A H Z•
This was a great journey. In this journey I learnt a lot. This is best course ever.
by Jan F•
The forums are dead and no support is provided by the instructors. They're just pocketing our money and doing bugger all.
Besides that, it is a well-designed course with some easy and some more challenging assignments.
First 2 weeks was good. But after week2, OMG. don't waste your time and money. Its like the instructor is reading from a book. it was such waste of time and money.
by Jasvin M•
I had learned quite a bit about graphs in my academics but that was mostly conceptual and didn't focus much on the implementation aspects. This course helped me actually implement various algorithms and concepts related to graphs and at the same time gave me lots of new insights and understandings into why certain things are the way they are with proofs given by the Instructors which is something I quite like about these HSE and UC San Diego courses, the lengths they go to prove every statement/lemma. Every professor explained concepts in a clear and concise way which not gonna lie was quite a problem in previous courses in this Specialization (I'm looking at you David Kane). Also if you are planning to take this course, I'll recommend you take Data Structures (for implementing Priority Queues using Heaps and also for the Disjoint Sets data structure), it certainly helped me!
by Greg G•
An incredibly strong course with a lot of potential if you're willing to look deeper.
It's well put together - as a baseline you will understand basic graph search and pathfinding concepts. (The homeworks are moderately challenging.) Moreover, you can watch some optional videos for additional proofs, and there's a whole module dedicated to advanced pathfinding algorithms.
Take time to make notes, and watch videos again if needed. Sometimes you'll need to stop and think about what Michael just explained, but fortunately the slides are really good and the proofs are detailed.
The extra material really is advanced, it contains pathfinding algorithms that have been developed only in the last few years! Fortunately for that, the assignments are optional because solutions are rather complex and there's little guidance. But if you're interested, it may be worth a shot!
by Vlad N•
Awesome course that gives an introduction to basic and some advanced graph algorithms. Really good explanations and very useful and, I believe, commonly used graph algorithms. I really liked the way problems were set. First, you have a high level overview of the problem, like say you need to find cheapest flight among some cities. And, then, you have the mathematical formulation of the problem.I'd definitely recommend this course to anybody who is not familiar with graph data structure and algorithms yet. Content is as good as two previous courses from specialization. Thank you instructors and Coursera for putting it all together!
by Tushar G•
This review is based on the last three courses that I have undertaken in the Data Structure and Algorithms Specialization.
While running our tests the output does provide the time and memory used for running our algorithms. I think it would also be instructive to see the running time of the best implementation in the particular language and the best time achieved ever by a student in such a course. It would provide us with an additional motivation to think about better and efficient implementations.
Note: I do understand that running times might not always be an exact reflection of the actual time the algorithm takes.
by Milos M•
An awesome overview of the graph algorithms. Some assignments are really challenging, but luckily forums are a great place where people have already faced them. A definitive recommendation!
by Shubham K•
This course is very much helpful for the graph beginners. As a suggestion, i would like to say that add some extra contents on the data structures which is to be used in the algorithm.
by Kishor K P•
exceptional very nice course. But we need to religiously follow the videos and materials
by JIA N•
The lecturers could have done a better job in presenting the contents. For some of them, the tone is always monotonous. Also regarding the Bellman Ford's algorithm, it would be more helpful if the lecturer discusses the impact of the sequence of the edges to the running time.
by Rudolf Z•
Great explanation of basic graph algorithms (week 1-5). However content of week 6 gives more questions than answers and should be improved.
by Oleksandr S•
The course is good, assessments were challenging. However, I did not like using of USSR map in second week lectures.
by To P H•
Need more graphical illustrations with colors when explaiing complex details
by Akshive P•
Great Course to learn fundamentals of Graph Algorithms.
by Henry R•
The video lectures are bdaly illustrated. It is very hard to follow. It is better to read books.
by Vivek N•
The teaching quality is very average and mediocre at best.
The assignments are merely implementation of lectures .
The Stanford and Princeton courses on Algorithms are better courses to take for one to pursue a serious study of Algorithms.
There is no pdf for week five exercise.
by Zsolt S•
Another great course! I started this one right after completing data structures and found it particularly interesting as graph problems seem to pop up everywhere in our modern, networked world.
Compared to the data structures course this definitely felt easier, however this may be down to me being more comfortable with my chosen language as well as with the overall process and structure of the assignments. Nevertheless there are some fun problems here that have connections to problems in the "real" world.
As a side note, I recommend doing the data structures course before this one, as some of the algorithms discussed rely on data structures, so understanding them and better yet having them implemented already will help a lot with focusing on the new material and passing the assignments.
Thanks again all the teachers for the great course!