Jan 20, 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.
Sep 29, 2017
good course, I like the fact you can use a lot of languages for you programming exercises, the content is really helpful, I would like to have more indications from the grading system to save time.
교육 기관: Mayukh S•
Feb 15, 2019
This is the best and the toughest course I've ever come across. I'm definitely a better programmer now. It completely changes the way you analyze the problem. Totally awesome.
교육 기관: Dheepak J•
Mar 14, 2019
Truly amazing course in which the instructors have the knack of explaining complex things very easily so as to be understood by a learner at the beginner level or at the intermediate level. I am so lucky to have completed all the assignments that were posted to me week on week and come to a very thorough understanding of the algorithmic tools and techniques... Well done San Diego team for your effort. Continue empowering the algorithmic knowledge of the world wide software community.
교육 기관: Greg G•
Apr 25, 2019
I have a Mechatronics MSc and now I'm transitioning to CS after starting to work as a software developer. Even with an engineering background, this course was challenging: you need to think hard when designing algorithms, then precisely design and test a solution. (Stress) testing is a concept that is frequently used in everyday software development, too.
For some assignments, you'll find the pseudocode in the slides so those need less brain power to implement but for others, you'll have to come up with your own original solution. This requires time and research. It's possible to ask others in the forum or Google around for hints, and most assignments can be solved in multiple ways (e.g. I solved several of the dynamic programming assignments with memoized recursive functions). You won't find many hints from the teachers, though since that would spoil the learning part here - the essence of the course is not in the slides but in solving the assignments on your own.
Upsides of the course are the automatic grading system, the diversity of the assignments and the quality of the mathematical content and the slides.
Downsides of the course are the sometimes bad accent of the teachers - this could be eased with more accuraate captioning for the videos -, and the clumsiness of downloading slides (they are not available in one package, and trust me, you're going to use them a lot!)
Prerequisites for this course: you will need linear algebra knowledge to know about e.g. geometrical series or limit values, and you will need to know how mathematical proofs work. This is all advanced high school or 1st semester college material, so nothing special. Fortunately the teachers always point to extra links if you're in trouble.
Also, you'll need working knowledge for 1 programming language. Fortunately for many languages, you won't need to care about I/O, it's already in the starter files. I learned Python just for fun, during this course for example. All that is needed is basic control statements (loops-if), arrays and functions, nothing more.
Tips: 1. Don't give up! 2. You don't need to solve all the assignments, the ones after the minimum level are usually more advanced. 3. When in trouble, stress test if you can, it helps a lot. 4. If you're confident, you can 'make a run for it' and submit your file - you can submit as many times as you want.
교육 기관: Aditya T•
Mar 12, 2019
I have found this course to be very well explained and It covers wide range of topics in design and analysis of algorithms.
교육 기관: PUCHALLA S P R•
Feb 10, 2019
The course is perfectly designed. The perfect start for those who start with data structures and algorithms. The Dynamic programming was a little bit tough but overall course is perfectly designed
교육 기관: Tom A•
Dec 23, 2018
Aren't we paying for mentors to respond to posts in the discussions? I don't need to pay you monthly to be ignored while I struggle to learn on my own.
교육 기관: Wesley N•
Dec 20, 2018
Maybe it said this somewhere, and I just missed it, but the grading metric is based solely on the number of assignments you do. If you do the required assignments, it will say you passed, but your grade at the end will look like a failing grade (< 65%). Do not take this course unless you have a LOT of time to dedicate to it.
The lectures are pretty good, but sometimes it's hard to understand them. The subtitles are wrong in many cases.
I give it 3/5 because the material covered is good and for the most part explained well. But the two issues I listed above really limit the value I see in this course. I am questioning if I even want to continue with this specialization.
교육 기관: BOUNSI D W L•
Nov 10, 2018
Splendid! The course material is rich, the teachers explain very well, in great detail and the exercises are pretty challenging, not to mention the set of compatible programming language one can use is very large. I loved it!
I would recommend this course to anyone serious about learning algorithm analysis and design, this is a great place either to get started or to enhance your current capabilities.
교육 기관: Anoubhav A•
Sep 11, 2018
I have taken many courses on Coursera. This was hands down the most challenging, intellectually stimulating, painstaking and all in all fun course. The number and quality of problems in the assignments were much better compared to any other course. I have learnt alot from this course in a span of few weeks. I can't wait to get started with the second course on Data Structures offered by them!!
교육 기관: Mohit S•
Aug 07, 2017
It is very difficult to understand what the hell some of the lecturers speak as they eat up half of the words they speak. Also the transcript of the video shows incorrect words. Have to repeat each damn video a gazillion times to understand
교육 기관: Putcha L N R•
Jul 05, 2019
Quite an engaging course to be honest!! Definitely recommend the course for beginners as well as people looking for brushing up of important paradigms.
교육 기관: 江祖榮•
Jul 04, 2019
I learn a lot of solid programming/debugging skill and algorithm frameworks such as complexity analysis,
divide-and-conquer, greedy, dynamic programming, top-down recursive with memorization
as well as stress test, and random test to ensure output correctness and corner case handling.
To be honest, this course is really challenging but the outcome of progress is sweet and worthy.
교육 기관: Benjamin D•
Jul 03, 2019
One of the best online courses I've ever took!
교육 기관: SAHADEVAREDDY A S•
Jul 03, 2019
Programming Assignments are insanely amazing.
교육 기관: Nguyen T C D•
Jul 01, 2019
The material is quite really well-prepared and lecture is really understandable. Highly recommend this course for whom want to consolidate Algorithm and Data structure knowledge
교육 기관: Josh F•
Apr 25, 2019
Opted for 5 over 4. Not a perfect course but damn close: Assuming 'basic knowledge' one of the languages suggested should also have as a pre-requisite 'introductory computer science' since having an ability to code in say python at a basic level doesn't necessarily mean you understand anything about file and bitstream IO, or other useful abstractions that will make this course a wee bit more interesting.
Anyone who doesn't have a strong grasp of CS principles shouldn't be dissuaded however, it just means that your learning curve will be steeper. The trick is digging your heels in and researching the problems, sticking to your guns and hammering out even the most ugly of code until you have a correct solution... AND THEN trying to make the thing faster. You will get faster at writing our your plan, faster at implementing, and learn to read code line by line to understand what is happen beneath the abstraction.
I'd also urge people to avoid using built-in functionality of your language to solve a lot of these problems, ie. in the Majority Element problem, you *could* just use python's built-in counter to count instances for you but by doing that, do you really understand what is happening beneath the hood? Do you really understand what the output of that abstraction is doing? Probably not. So do it the 'by-hand' way and then take advantage of the built-ins when you rewrite the code for your own use or to put on your repo.
All in all, a great 'trial by fire' course if you're a novice, and if you're not a novice, it will help make you a better programmer. For sure.
교육 기관: CHI C•
Mar 15, 2019
Grader system is really nice to use; it helps to improve my debugging ability a lot. Good job!
교육 기관: Abdu M•
Feb 26, 2019
Very nice course. Covers a lot of ground, theory and practice. Homework assignments are interesting. The autograder can be a pain, and most of the time you're not even sure what the problem with your algorithm is, but that's all part of the fun and challenge.
교육 기관: Tuan N•
Feb 17, 2019
The instructors teach in clearly way. The assigments arenot too hard and can be solved with some google search or look in forum. Good course for beginer and also all of people who want to revise algorithms.
교육 기관: Satyam K•
Feb 09, 2019
Crisp course, and challenging assignments make sure you memorize all the concepts learned. Great work by all the instructors!
교육 기관: Miraj•
Feb 06, 2019
This course has a wonderfully designed syllabus, and with a few exceptions, the lectures had extremely clear, lucid explanations of the underlying concepts. I got the most value out of the homeworks, each of which had several challenging problems that really reinforced the learnings from lecture. Thank you, professors!
교육 기관: Bikash D•
Jan 16, 2019
All i read in college is the theoretical concept about the algorithm and not it's implementation in actual programming language.
This course made me code the algorithm and in the process i learned lot about the chosen language as well as how we can efficiently write the code.
Keep up the good work!
교육 기관: Quynh V•
Jan 06, 2019
I liked the fact that the algorithms are not just the introductory searching and sorting algorithms. The assignments are fairly difficult, but not impossibly so. You will practice solving computational problems, designing new algorithms, and implementing solutions efficiently (so that they run
in less than a second).
교육 기관: Rahul s•
Dec 23, 2018
This course is just awesome and outstanding in every term. Teachers are very good at explaining even the toughest of problems and really helped throughout the course, i enjoyed and leaned a lot.
교육 기관: Alyson L V•
Nov 03, 2018
To much talk about how to calcule the Big(O) and no enough explaining about the content