Chevron Left
Back to Algorithmic Toolbox

Learner Reviews & Feedback for Algorithmic Toolbox by University of California San Diego

4.6
stars
12,482 ratings

About the Course

This online course covers basic algorithmic techniques and ideas for computational problems arising frequently in practical applications: sorting and searching, divide and conquer, greedy algorithms, dynamic programming. We will learn a lot of theory: how to sort data and how it helps for searching; how to break a large problem into pieces and solve them recursively; when it makes sense to proceed greedily; how dynamic programming is used in genomic studies. You will practice solving computational problems, designing new algorithms, and implementing solutions efficiently (so that they run in less than a second)....

Top reviews

BD

Jan 19, 2021

The course was really amazing which provided deep knowledge from basic to advance that how algorithms works and how to design algorithms. Thanks to all the expert teachers who taught in this course.

SG

Jan 19, 2017

I liked the fact that the algorithms are not just the introductory searching and sorting algorithms. The assignments are fairly difficult (I have decent scripting experience), but not impossibly so.

Filter by:

1826 - 1850 of 2,569 Reviews for Algorithmic Toolbox

By Naveen B

•

Jun 17, 2019

People who like to learn by practicing would like this course. A variety of questions at different levels of difficulty are provided in the assignments, which reinforce the 'algorithmic thought process' that is taught in the lectures. The accent is sometimes hard to understand but subtitles are helpful.

To potential learners: Good understanding of recursion and basic data structures like array, vector (C++) will be quite helpful during the course. The estimated completion time on the course home page is probably 30 - 40% of the actual time taken to complete the course.

By Rika D

•

Dec 2, 2018

Really helped me with what I am terrible at - how to optimize my solution for runtime and memory. For context, I do not have any formal education in software development and am self-taught so the difficulty of this course was exactly what I needed. (Maybe someone with more education might feel that this class is easier and did not go in as depth.) Did not give this 5 stars because of how buggy the submission/solution checking software is (for BinarySearch, without changing the code, I got a different runtime with every submission, which either passed or failed)

By Danny Z

•

Jan 19, 2018

The contents on dynamic programming is not as easy to follow. I think the problem is that there are many symbols in the pseudo code. It is hard to follow the explanation while trying to figure out what each of these symbols means for the first time.

Other than this part, this is a great course. Some of the technics are really useful. The assignments have clear instructions, and some of the problems are quite challenging and pushes you to really understand the week's contents.

I would recommend this course for anyone feeling weak at algorithm.

By Mehrdad M

•

Apr 4, 2019

Some of the lectures was really bad and the instructor wasn't able to convey the context. I felt that I needed more illustration, example and intuition to get the idea so I had to go to other resources which to understand some topic which was really time consuming.

-The exercises were really good and help me to learn a lot.

-Some code stating skeleton were misleading

-I wrote my codes in C and it was really hard to implement exercises as some assignment required complex data structures such as dynamic sized arrays which C does't have

By UMANG T

•

Sep 13, 2020

The questions covered in the course were of good quality. The assignment problems were quite challenging as well. I'll definitely give a try to the ones I didn't solve. Also, puzzle-based learning was a great thing. However, the explanation of concepts could have been more detailed and clear. It felt sometimes like we are unable to imagine or relate to what they speak, and it starts from around Week 4 when the level of problems discussed was too high but very little time was given comparatively. Overall it was a Great Experience!

By Leslie C

•

Feb 3, 2023

Overall it is a good and challenging course that is programming-heavy. I really liked that we were given starter codes for the programs in a variety of languages. The slides could use some more detail about interpreting the pseudocode and the "instructors"/discussion board isn't responsive in a timely manner. The grading process could use improvement to provide better feedback to the users about failed test cases. It can be frustrating when the grading doesn't show the input/expected output when some of the test cases fail.

By Gregory H

•

Feb 4, 2020

Good amount of resources included to help learn the topics of the course. The estimated time to complete each week is quite misleading, however, at 5-8 hours per week. I ended up needing more like 10-15 to even pass most of the assignments as they are quite difficult. It's also frustrating that they are your only grade in the course as I often felt I had a good conceptual understanding of the algorithms presented but did not know some of the underlying mathematical concepts necessary to solve a lot of the problems.

By Pinaki B

•

Aug 14, 2020

This was an amazing course for someone with a very minimal background In DSA! I learned a ton not only about the solutions of common algorithmic problems, but additionally the process and thinking in order to come up with my own independent solutions. The only point of frustration for me was when a hidden test case caused me to debug for hours even though I would have learned just as much if given the test case. Overall though, this course is definitely recommended if you want to start your DSA journey.

By Kirill V

•

Jan 24, 2018

I did not know much about data structures when starting and had to figure them out by myself to complete assignments in the final two weeks of the course, which unfortunately took a very long time to figure out. It turns out that the relevant data structures (particularly tree lists/arrays) are in the next course and it would be good if I knew about this beforehand.

Otherwise, the course is very good and teaches how to think about problems to solve them and not only solve them with pre-made solutions.

By Anthony K

•

Dec 27, 2016

Lectures and quizzes are okay, assignments are great to make you think deeper about the topics. I have to agree with a lot of the other course takers that you get very little help from the teaching staffs. However, I do feel that the discussion forums are enough to help you through all of the programming tasks.

Programming assignments aren't really friendly to Haskell's list, and vectors are not available. If you use Haskell, you'll be forced to work with arrays or sequences, which are not as nice.

By João R

•

Nov 4, 2021

Pros:

Very nice concepts explained and the diversity in the assignments was amazing.

I think the concepts were better explained than when I first went to college 15 years ago.

Cons:

Week 5 needs some re work to make the materials match the other part of the course.

I'd also like some more focus into the theory in the assignments material as I felt that only in the first few weeks of the course did we get a grasp into why Big O notation is important (that was lost as soon as we hit Dynamic Programming).

By VISHAARAD B

•

May 20, 2020

Course content is good (the interactive puzzles,quizzes and assignments) but the explanations get worse as the course progresses. Especially the dynamic programming weeks, they are not explained very well but the examples done in those videos thankfully make some sense. Take the course realizing that you will have to seek other sources from time to time and strive hard to get it if you're new to this, but the questions and puzzles do end up making it worth your time, so decide accordingly.

By Philippe D

•

Nov 6, 2018

This is the Dark Souls of MOOCs. Tough but rewarding when you complete it. Easily one of the most beneficial courses I've taken on Coursera. In my opinion, it's up there with Andrew Ng's Machine Learning and Deep Learning courses. No fluff here, you have to really learn the material to pass. There are some small flaws in the course, material isn't always adequately covered. So definitely use the forums and outside texts and videos. Overall though, I would definitely recommend it.

By Mohammed M

•

Sep 6, 2020

It is very good course with very good material.

My negative point will be only on the last 2 weeks (dynamic programming) as the videos shall be more detailed with more examples for better understanding, I did not understand everything at the videos.

Positive points: Instructors are very good, the assignments is very challenging, however they are common problems.

Also the splitting of the content is very useful and helps a lot.

Thanks for the great effort!

By Pablo E M M

•

Aug 25, 2017

It's a great course i learnt many thing about algorithm, c++ and solving problem efficiently.

I began two week late this Course so, i decided to complete the minimum required in the homework; i thought in complete it after, in the final week, but the course finish when you get more than 60% of the course, i can't improve my califications :/. So my advise is try to finish the most quantity of the work before submit the last homework, and work hard.

By Try K

•

Feb 28, 2018

The problems provided were really challenging but rewarding once understood. However, I found the instructors often hard to understand in the sense of their explanations. Rather than the use of just pseudocode, I prefer to see the use of the intuition of the pseudocode via an example. In addition, I often found the mentors and instructors to be non-responsive in the forums / discussion boards. However, this class has definitely taught me a lot.

By Fernando G

•

Jun 29, 2016

Really challenging, starts easy but gets heavy and time consuming after 3rd week.

Be prepared to study additional material and spend some hours cracking the weekly assignments. Satisfying when you accomplish it. Maybe a good idea could be to combine algorithms and data structures and separate in 2 courses Algo & Data Structures 1, and Algo & DS 2.

I feel, a better knowledge of DS could have help me to solve the Algo assignements faster.

By Bakir Y

•

Jan 24, 2021

First, I really thank all instructors and staff that have worked hard to prepare this amazing course. I learnt a lot by taking it. However, in some lectures I got stuck, some content was not clear enough to understand. Despite the fact that I passed the assignments, it was challenging for me. I could not follow the instructor as he explains the algorithms. In all, it is worth taking to this valuable course. Thanks a lot!

By Naufal P H

•

Aug 1, 2021

Exceptional course for beginner programming. I just discovered that programming can be fun, especially if you figure things out yourself. I bet technique used in this course would be useful later in any career (as it teach you how to solve problem). But there is one hiccup: the grader sometimes can be manipulated, leading for too easy challenges. But everything else is just perfect, in my opinion (beginner programmer).

By Sergey K B

•

Feb 2, 2017

I liked the course - it has very good balance, with some challenging tasks, but not too hard for smart learner. Good job! Getting 100% grade was fun.

On other side minimal passing grade is a joke. You can literally get the certificate simply by implementing given pseudo-code in language of your choice. It hugely devalues the certificate, especially so without Honor track and no "with distinction" certificate offered.

By Ahmed F S A

•

Nov 11, 2021

 this course is my first algorithm course,and i loved it ! It provided a good coverage on the algorithms and well explained material to study from,but i didn’t like the english accent of the instructors,it was hard to cope with and understand in most of the times ,i had to read the subtitles under each video to understand the content sometimes,but still i gained a lot from this course and i recommend it.

By Matthew C

•

Dec 5, 2016

Nice and tough course. Make sure to plan ahead for the homework if you expect to complete all of the assignments above and beyond what is required. After finishing the course I switched my session to the next one so that I would be able to complete all the extra assignments. It can be tough juggling this class if you work full time, and have other projects outside of work that demand your time.

By Daniel K O

•

Aug 8, 2016

Near the end it becomes a slosh to get through all the information covered in the last two weeks. It feels like you are given some hints and pointers on what to do, but for the most part, the last two weeks are being tossed in the deep end and hoping you learn how to swim.

I want to give a 3.5 but that's not allowed. With the amount of content covered this course is closer to a 4 than a 3.

By Jason G

•

Sep 10, 2017

Solid material. Majority of the lectures are clear and are a nice logical progression. I didn't have to resort to external materials apart from 1 problem. I love that you're required to submit code that gets compiled & tested. It's a much better learning tool than just videos + multiple choice questions. I'm looking forward to working through the other courses in this specialisation.

By Paul B

•

May 29, 2019

In total, I learned a lot in the course. The programming assignments are really hard but if you stick with it, it is very worth. One thing I didn't like that much are the explanation videos - here, the team could improve. A bit more informal "intuition" explanation would help a lot to create a better understanding of the material (e.g. like Prof. Ng in the Machine Learning course!).