Chevron Left
Back to Algorithmic Toolbox

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

4.6
stars
12,463 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

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.

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.

Filter by:

1801 - 1825 of 2,565 Reviews for Algorithmic Toolbox

By Ankit K

Mar 19, 2016

good

By efb a

Nov 13, 2024

zor

By Otaboyev S

Oct 28, 2024

yes

By Sumanth M P

Aug 30, 2021

ok

By RIYA D

Aug 17, 2021

NAA

By RAVI K G

Aug 16, 2021

NAA

By AMAN S

Aug 16, 2021

NAA

By Ivan G

Aug 15, 2020

fun

By Yogesh k k

Jul 31, 2020

4.8

By 伍宇恒

Sep 23, 2018

非常好

By KUNDALIYA V

Nov 15, 2021

NA

By Ishwar L K

May 21, 2022

.

By Igor S

Dec 20, 2016

The course content is very good and is must have if you missed that stuff in colledge. It teaches of algorithmic analysis so you know which algorithm is more efficient, gives some examples of cool techniques and provides challenges to apply those techniques.

However, there are things that I hate about this course. First of all this is about forums. They are broken down into sessions and there are too little people on each session. Staff provides exactly zero help. If you are stuck, you have no hope on these forums and will need to find help somewhere else.

Programming assignments are great, they are relevant, interesting, challenging and the automatic grader system estimates not only if we get the correct answer but also the efficiency of our algorithm. There have been some problems in divide and conquer section though. I've been struggling with implementing binary search (which is quite a simple algorithm!) in JavaScript to pass the assignment for weeks. I've written and rewritten it in different ways, done hundreds of manual and automated tests, posted on course forums (receiving zero answers) and have gotten the same error again and again. I was able to solve this only by switching to Python. I am quite sure there is a mistake in the test case, which cost me hours and hours. Overall, the programming assignments are very time consuming and lack of support and not showing test cases make things worse.

I do not like that we cannot see the test case where our program fails. Perhaps, if you could figure out a test case that might fail in your program that would make you a better programmer but I felt more like it was wasting of our time. The main thing is to analyze the test case that fails and understand why, it will bring the same result without wasting time and feeding anger,

Some lecturers have a strong Russian accent, that is very distracting. It is not a lot of work to take some English pronunciation training before making a course, isn't it?

Overall, I enrolled for the specialization and planned to buy it in full but bought only this course to start with. Now I am glad I did that because now I am not sure about buying the other courses and will look somewhere else first.

Anyway, the creators of the course have done a great job, which is highly appreciated. I believe you can make this course much better by fixing the issues I pointed above.

By Deeprashmi N

Jul 20, 2018

The course is awesome and hold immense value for anyone who is new to the field of Computer Science or just wants to add to his or her repertoire the amazing world of Algorithms. Algorithms are the basic tool of any Computer Scientist and are still in constant demand and development. The course develops the knowledge of this very important topic starting off from the basic and slowly but steadily building towards the apex.

That said, the course sometimes becomes a bit heavy and multiple reviews of the same video is needed to completely understand a topic. Algorithms is not a topic made for spoon feeding and this course treats it this way.

The professors are awesome, each one with their own idiosyncrasies which is both fun and interesting at the same time. The level they go to to make a topic clear is appreciable. On this note I would really like to mention Prof. Alexander Kulikov for his brilliant way of teaching and making each topic his playground with his real life scenarios and "toy examples".

Overall, this course has blown me away. Thanks to all that made this course and in the end thanks to Coursera.

By Zizou

Mar 16, 2020

I learnt a lot! I loved the programming challenges given for each week. I made sure to solve all the problems and not just the required amount to pass the specific week, each week has a mix of easy, medium, hard problems. If you only do the required amount of problems to pass, then you might end up skipping the hard problems. The hard problems are challenging. One thing I did not like about the the course is help on issues posted in discussion forums, I did not get any help yet on the few times I posted in the forum. But many a times the questions one will have would be discussed previously, so make sure to go through the discussion forum to find if your question has already been discussed if you had one. I liked that they taught how to write stress tests, but its not easy to come up with naive solutions some times and this where better support from TA's would help.

By Никита Б

Oct 30, 2021

Этот курс хорошо заставляет подумать над некоторыми задачами. При этом вся нужная теория объясняется и ее вполне достаточно, чтобы додуматься до решения(но я не на столько умен, чтобы решить все задачи из этого курса). Курс короткий, но очень ёмкий. Воды почти нет. Есть только одна претензия. Меня очень раздражало на протяжении всего курса, что в контрольных задачах всего лишь названия задач. Нет описания задачи формата ввода/вывода. Это приходилось искать в книжке, что очень неудобно. Курс не совсем подходит абсолютным новичкам в программировании, у них ещё не сложилось правильное мышление. Так же как и если вы знаток алгоритмов, то тут вам ловить нечего. Если же вы хотите подтянуть свой уровень программирования и логическое мышление, то этот курс для вас В целом курсом доволен, считаю, что время зря не потратил, рекомендую

By Jed S

Aug 21, 2018

There are a number of things I would improve, chief among them the forums are difficult to navigate or get meaningful info about what a solution might look like. Part of this is probably a (spoken) language issue, another is probably the level that people come to the course with. Also, at some points there are some true disconnects between what is taught and what you are expected to figure out. Other modules feel about right (week 5, for example). I feel like many of these issues could be resolved by 1) providing the data for the samples in the pdfs as part of the starter files, 2) managing the starter files as a github project where issues can be raised and tackled. Overall though, really great information and I am excited by the level of knowledge I've acquired through thinking about these ideas deeply over the last month.

By Stefan N

Sep 15, 2016

I like the course structure and material. It starts off easy enough to get you interested and then throws at you challenges at early stage, if you are up for it.

What I don't like is video session itself, some of instructors talk too fast and dwell much into topic, assuming you understood everything. And as way to composite that, they offer a "resource" links to help you understand.

Then some of them have "hard" accent, it's really difficult to follow them even for native speaker, yet alone for those whose English is second language.

Now exercise and assignments are spot on but you are forced to relay on other sources to grasp everything. I doubt anyone taking this course has not reached for "outer" help at least once.

By Sriram D

Jun 26, 2017

This course is good, challenging as well as relevant. It stresses more on how to classify any computer science problem and apply the appropriate technique( divide and conquer, greedy or dynamic programming). Learnt a lot from teachers. Some of the topics can be hard to understand but one should not give up. Listening to video multiple times, working out on a paper, may be referring a youtube video would definitely help to understand the concepts. Since the concepts are deep especially in dynamic programming, one may find it not very clear during the first attempt, but as I said one should apply himself a lot for the better outcome. At the end its a good course, please go ahead and take it.

By Madhuri K

Nov 10, 2017

I loved this study . Having busy working days ..its hard to sneak and decide how and where to get started with some challenging studies like Algorithms. This toolbox just gave me worth the money head start to algorithms.

The assignments are the highlight with lots of flexibility of choosing various programming language like ( java python haskell c cpp) to submit code in. Icing on the cake were the starter files.

I was overdue for assignments ( Oops !) but it was very helpful that coursera kept me on toes by sending timely reminder mails to not give up ! ( How cool is that !) . I value it !

Thank you team ! Special thanks to Mr.Alexander .

By Andrew B

Sep 5, 2016

Overall this was a good course. Some of the presenters need to work on their presentation skills (personally I had no problems with the accents). I also felt that the sections on dynamic programming seemed a bit rushed and I needed to spend a bit of time researching this on third parties before I felt comfortable completing the exercises.

The grading system was really cool and the exercises seemed well thought-out and thorough. I'd recommend this course to existing developers without a computer science background. Those who want more mathematical rigour should look into the Tim Roughgarden/Stanford course.

By Andrea

Oct 22, 2017

Excellent course with clear lecture and interesting hands on exercise. However, as fun of learning in a deep way the content I retain the number of hours as underestimation of the real commitment that is needed. In other words, a lesson of 10min video it might requires 1-2 hours of study just to truly understand the concept and also look for other resources to explore more detail of it. Done as at full time is achievable to finish the course in time with a great understanding. Excellent course to give you a guidance on what needed to be study as a base for future courses (my case "ML path")

By EJ M

Jul 11, 2017

It was overall a great course. The only problem is that it gets very dry at times and hard to pay attention when they explain very fine details of implementations. It can feel a lot like sitting in class with the instructor reading from a textbook. For sure, the Divide and Conquer needs a facelift. The videos focused on some pretty intense details and jumped all over the place.

Other than that the exercises are really awesome. They start you off with an average difficulty problem and provide some advanced level extra assignments if you want to really dive into that particular subject.

By Natraj n c

Jun 3, 2019

Without any doubt, I can say that the assignments are amazing! I 've never seen such good challenging assignments. You can only do them if you get the concepts. The lecture videos can be improved like explaining techniques of how to think to solve a particular coding problem. As assignments are in particular sections we are able to directly apply that concept but in the real world, it doesn't work like that. We have to think about which concept to apply to solve the problem(like divide and conquer, greedy approach, etc..). Anyway, this course is best to check your skills in coding!

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.