Chevron Left
Back to Advanced Algorithms and Complexity

Learner Reviews & Feedback for Advanced Algorithms and Complexity by University of California San Diego

529 ratings
98 reviews

About the Course

You've learned the basic algorithms now and are ready to step into the area of more complex problems and algorithms to solve them. Advanced algorithms build upon basic ones and use new ideas. We will start with networks flows which are used in more typical applications such as optimal matchings, finding disjoint paths and flight scheduling as well as more surprising ones like image segmentation in computer vision. We then proceed to linear programming with applications in optimizing budget allocation, portfolio optimization, finding the cheapest diet satisfying all requirements and many others. Next we discuss inherently hard problems for which no exact good solutions are known (and not likely to be found) and how to solve them in practice. We finish with a soft introduction to streaming algorithms that are heavily used in Big Data processing. Such algorithms are usually designed to be able to process huge datasets without being able even to store a dataset....

Top reviews


Jan 04, 2018

As usual, complex arguments explained in simple terms!\n\nSome problems are really tough! (e.g. there's a problem from Google Code Jam).\n\nThank you for this course!


Aug 26, 2019

Very Very Challenging Course , it test your patience and rewards is extremely satisfying. Lot of learning on a complicated subject of NP-Hard problems.

Filter by:

1 - 25 of 96 Reviews for Advanced Algorithms and Complexity

By To P H

Sep 27, 2018

Very bad course content for some modules

Many abstract concepts and mathematical terms but with severe lack of explanation of the terms and lack of specific, concrete examples to help learners to understand them

For example: in LP module there should be example of how the primal and dual matrix looks. How simplex algorithm is used on a specific example (showing explicit graph). I undertood only 25% of what was discussed about in this module

No motivation to move on after week 2!

Other weeks are slightly better

In summary: Too many abstract concepts with little examples

By Nikhil

Jan 04, 2017

Loved what I learnt, I also implemented a project using Google MAP API for the organization I'm working at

By Yue S

Oct 22, 2019

I really dislike Daniel Kane's teaching style!!! His slides are rough and lack of details, the structure of his lectures is loose. Every time I met a Unit taught by Kane, I have to spend much more time on videos and assignments than other Units. This makes me very annoyed -- why can't this teacher be more serious on teaching just like other teachers in this course??? :-(

By Omar M A M

Apr 15, 2017

Thank you very much for this awesome course, I really enjoyed and learned alot from it.

I really liked the selected topics, they act like an intro to some really interesting fields in the programming.

I've learned about NP multiple times but never found a use to it until now, the problems were really good and informative.

I think the linear programming was pretty rushed, it should've been expanded over two weeks with more in details.

Maybe add a problem or explain the use of duality .

By Kota M

Sep 16, 2016

I enjoyed the course a lot. I cannot thank the instructors enough.

It would have been more interesting if we could go deeper on linear programming, such as extension to integer programming. The discussion about the duality was a bit too fast to me.

By Fernando K I

Jan 01, 2020

Shout-out to professor Alexander Kulikov that is the only one in the whole specialization who has good didactics skills. He knows how to explain a concept by giving examples and walking through them step by step so the viewer can understand the thought process. Unfortunately, professor Kane's lectures were poorly taught. I understand that his videos are older and maybe the technology wasn't there yet when he recorded the lectures. You'd better off skipping those lectures and going through the assignments directly, learning the material elsewhere.

By Kirill M

May 10, 2017

Very weak explanations. Most time I spent in the internet googling how to implement assignments, because it was not clear from the course.

By Tamas K

May 05, 2018

Great course again! The problems are considerably more difficult than in the previous courses in this specialization. The only problem is that the forum interaction with TAs is nonexistent, if you stuck with a problem, you have to solve it alone.

By Madan K

Oct 09, 2016

Excellent but tough course ,you need to work and it is not simply called advanced Algorithms and Complexity.

You will be forced to test your code properly ,even if you didn't do it properly in the previous specialisation course.

By Dr K S V

May 18, 2020

Excellent Course. I learnt new things like integer programming and bioinformatics related applications.

I did my Ph.D in bioinformatics datasets. Stream matching algorithms and apllication oriented wonderful examples

By Eugenio G M

Jan 04, 2018

As usual, complex arguments explained in simple terms!

Some problems are really tough! (e.g. there's a problem from Google Code Jam).

Thank you for this course!

By Chitrang S

Aug 26, 2019

Very Very Challenging Course , it test your patience and rewards is extremely satisfying. Lot of learning on a complicated subject of NP-Hard problems.

By Yinchung C

May 15, 2019

This is a very challenging course in the specialization. I learned a lot form going through the programming assignments!

By Syed H A

Feb 12, 2020

Really rigorous and fundamental with what scientist and other professionals need to know about programming.

By Surbhi M

Dec 14, 2019

This course is wonderful.I am really feel like I have all knowledge of adsa

By Addis R S

Sep 26, 2016

Thank you very much. I learned a lot in this course. I recommend it!

By Anton R

Mar 02, 2019

Liked this course, at least there are courses for advanced level.

By Priyansh B

May 31, 2019

Was fun learning advanced stuff and implementing algorithms.

By Tamilarasu S

Apr 10, 2018

Very well made course with challenging algorithm problems.

By Pablo E M M

May 20, 2018

Great Courses!. Thanks for this wonderful specialization!

By Joseph G N

Sep 02, 2018

An incredible course,the exercises were very interesting

By Ahmad B E

Jan 10, 2018

This is how algorithms should be taught.

By Greg G

Apr 03, 2020

An incredibly challenging course with a lot of juicy content. Builds heavily on previous courses in the Data Structures and Algorihms specialization such as hashing, graph searching, data structures, stress testing, algorithmic complexity etc. But given you completed those, you already know how to solve such problems, and it's rewarding to see all the pieces working as you put them together. Also, this course requires some additional maths knowledge such as linear algebra, logic and probability theory. All in all, the "advanced" attribute fits well.

Assignments are wildly varying in difficulty - completing one took me 3 days, another was done in just 30 minutes. They were mostly fine (except for the simplex linear programming solver which I haven't even attempted) and forums were very useful for guidance.

The videos themselves are usually okay, the only seriously lacking area is the linear programming week with Daniel Kane. LP (a fundamental subject in computer science) in itself could fill a whole course, but simply put, his explanations and examples fell short, it was very hard to understand them. So refer to the additional readings there if you are interested. On the other hand, the rest of the course is nice.

Week 1 (flow networks) with Daniel was also kind of hard, but not impossible to understand. Alexander Kulikov's 2 weeks on NP-completeness are the high mark of the course, with engaging and clear explanations. Michael Kapralov's optional 'heavy hitters problem' videos are also interesting and pretty well explained.

By Madhusudan H J

Oct 14, 2018

When they say advanced algorithms and complexity, they mean it. I was initially under the presumption that it would be a straight forward video course, without any assignments. But when I had to start with programming assignments that's when the real test started. Amazing set of tutorials. Would have liked if the courses had more varied examples.

By Connor W

Oct 14, 2017

This is a tough course compared to the previous courses in this specialization. The cover of NP-complete problems using two weeks time is especially valuable. The course team has also done a fantastic job in designing the programming assignments.