Sep 14, 2018
Well researched. Topics covered well, with walkthrough for exam.le cases for each new introduced algorithm. Great experience, learned a lot of important algorithms and algorithmic thinking practices.
May 27, 2020
Thank you for teaching me this course. I learned a lot of new things, including Divide-and-Conquer, MergeSort, QuickSort, and Randomization Algorithms, along with proof for their asymptotic runtime
автор: Nikolaos E•
Nov 07, 2016
Personally, I would recommend this course to anyone who really wants to learn how things work in that sort of algorithms. I found the assignments a little difficult, but also extremely helpful.
автор: Ferdinando I•
Apr 24, 2020
I think the course is really good. Enough mathematics to make things more rigorous, but not too much that it is hard to follow (for a MOOC). The questions make you think about the material.
автор: Akshath M•
Apr 23, 2020
Made notes, watched optional videos, re-watched the content till I understood and aced the tests! :)
It's fairly challenging but also do-able if you put your mind to it
Apr 26, 2020
Should really work hard to pass... But anyway, I appreciate the changes that the teacher brings to me. Really really a nice lesson the join!
автор: Deeksha S•
Apr 28, 2020
Little bit tough but if you learn this honestly then you will gain much knowledge.
автор: Shikhir G•
Apr 22, 2020
Brilliant course with proper explanations. Totally worth your time.
автор: Sankalp D•
May 01, 2020
very truthful and everything thoroughly explained
автор: Jakub K•
Apr 29, 2020
Very hard. Unique knowledge and skills.
Apr 26, 2020
bets for analyzing the algorithm
автор: Parsa N•
Apr 29, 2020
Interesting course and huge amount of knowledge
автор: Anguzu V J•
Apr 30, 2020
i loved it so much
автор: abusaleh i•
Mar 14, 2019
Just mere waste of time and money. Only suitable for Stanford student
автор: Nadim H•
Sep 11, 2017
Challenging and highly informative course. Professor Roughgarden has a concise and candid lecturing style that I found easy and pleasant to follow.
Make sure you're comfortable with one programming language, and have some experience in writing programs. There is a lot of math, and while not super advanced, make sure you've brushed up on: logarithmic identities, infinite sums, and counting (permutations and combinations). The course dives into some probability, but Professor Roughgarden will walk you through some optional (and very instructive) review lectures.
I'm looking to finishing the specialization, but I'll take some time off to review my discrete mathematics, and strengthen my programming first. This is my first MOOCS course, and I'm hoping all my future experiences will be as great. I highly recommend the course and Professor Roughgarden's lectures.
автор: zeinab s•
May 02, 2019
I audited this course and I believe this course is going to help me build my future career. I'm in transition between my original degree (engineering) to computer science, and I want to build a great foundation of my knowledge. For me, with little computer knowledge, this course was great. The syllabus is complete and covers essential material. The instructor explains everything clearly. although he talks a bit fast for me (I'm not native but I'm studying in an english language school).
It is a good combination of the algorithms and the math behind them. not too much math. The homework at the end of each week is also helpful to practice what you learned in videos. (Although I couldn't see the answers)
in Overall, it's a great course, and I recommend it to anyone with a passion for computer science.
автор: Steve J•
Sep 20, 2018
I found this course to be an ideal mix of abstract theory and practical application. Professor Roughgarden is quite adept at presenting in depth analyses of algorithms in a way that does not shy away from formal mathematics but also does not require a degree in mathematics to understand. For me, whose prior math coursework was mainly focused on areas of math not as prevalent in computer science as other in disciplines (e.g. calculus vs. discrete math), Professor Roughgarden's approach is ideal and opened up the door to a much deeper understanding of algorithms than I've acquired on my own over a multi-decade career in programming.
Highly recommend this course for anyone who, like me, has a lot of experience with programming, but no formal training on algorithms.
автор: Cliff C•
Nov 25, 2017
Loved the clarity and enthusiasm. The proofs and algorithm implementations shared in this class are often simpler and more elegant than the proofs and implementations I've found in other textbooks.
Just a few examples: 1. The proof of Quicksort's expected comparisons count was great. The course used a beautiful, simple proof summing the values of indicator variables whereas other proofs I've seen use a messy inductive approach. 2. The implementation of partition was much simpler than most other partition implementations I've seen, which tend to walk from the left and right swapping items.
The simplicity of the proofs and algorithm implementations make the material more beautiful. Thank you!
автор: Alexander L•
Nov 11, 2019
Very interesting. I learned a lot of new things. 5 stars!
Just a few things that could be improved:
-- The video and its audio are not really synchronized (maybe because the video is pretty old)
-- The Quicksort programming assignment was like: 1 hour to program a working Quicksort + 4 hours figuring out how the course creator wants me to count the compares of it as that's dependent from the implementation.
Nowadays there are better solutions to validate whether someone solved a programming task. geeksforgeeks.org and hackerrank.com for example just execute the program with test input.
But all in all: Very positive experience.
автор: francisco i•
Dec 24, 2016
Excellent course. What I valued most about this course was the clarity with which proofs and algorithms are explained. In learning algorithms one really profits from a great professor. Keep in mind that this course involves mathematics for proofs and I believe one has to be really curious about algorithms and dive into proofs to take full advantage of this course. Regarding assignments they are challenging but definitely approachable if you have some experience in programming. My advice: do not get discouraged, this is all about resilience!
автор: Frank J M•
Feb 25, 2019
lectures were great. Pace was just right. It is great being able to repeat parts of the lecture to improve your understanding. I only wish the Part 1: Basics books covered the week on graphs and the contraction algorithm. The Algorithms Illustrated book was a great companion for the course. Not having a book companion made the graphs and contraction algorithm material a little more difficult.
I like the the lectures are not copies of the book. The flow of topics match, but the explanations in lecture are often different.
автор: Benoit P•
Dec 29, 2016
This is a great course. The teacher is very clear, and the material is very interesting. The programming assignments are interesting: the problems asked are very simple, but the input is generally too large to use brute force: you really have to implement the algorithms presented in the videos. This makes you realize how much smart algorithms can make a difference.
The level of the class is relatively high, compared to other Coursera courses I've taken. If you want some serious training on algorithms, look no further.
автор: Jason H•
Jul 29, 2018
This is the place to start upgrading your programming skills to the next level. If you have some prior programming experience solving problems with data, but have never rigorously looked at the efficiency of your algorithm and wondered "Can this be better?" this course is designed for you. You'll learn to think and talk like a software engineer and not just a computer programmer. The course has some very practical problems to solve, which will give you a sense of empowerment to tackle big data sets with ease.
автор: Rohit K S•
Apr 12, 2020
This course was very helpful.
I learned a lot from this course.
I learned why algorithms are important how they help to optimize time and space complexity , moreover I learned how to analyse time and space complexity of any given algorithm.
I learned various sorting algorithms and various other algorithms used for solving problems such as finding number of inversion and finding minimum cut.
This course will not only help me in my academics but also add to my resume, which will help me to get a job.
автор: Charlie Z•
Jan 28, 2018
Roughgarden creates a great mental model for algorithms. He explains the ideas that connect them and how they are organized. He doesn't waste your time, hitting the key components in both the math proofs and in explaining the algorithm implementation. The way he teaches in like induction; he uses a super simple example (base case) and abstracts that out to get the general case.
After the course, I *get* algorithms now... (instead of memorizing them, I can see how to deduce them). Thank you!
автор: Mohamad S D•
Jan 12, 2019
I was always looking for a good material to study this complicated topic , and after a lot of purchases and digging , I finally found this course , these sequence of courses will not give you every detail about every algorithm in the universe but it will give you the knowledge that will enable you to walk alone in the street of algorithms . Really great course , I'm still in course no 2 of the 4 courses but i'm very happy of what i've seen so far and looking forward to finish them all isA
автор: Hrishikesh A•
Dec 14, 2016
Tim gives great insights and draws attention to the right things at right time! Exercise and quizzes are very helpful and makes you think in right direction. Also the in-video-quizzes are well thought of to make you think about the topic being described in the video and thus makes it easy to understand the contents. This is just the right course anyone should take to improve/learn algorithm and data structures course. I've got got aaha! moments multiple times. Can't thank Tim enough!!