Algorithms: Design and Analysis, Part 1
Tim Roughgarden
—
Stanford University
GO » Write Review |
People interested in this course were also interested in
![]() |
Algorithms, Part I Princeton University — Robert Sedgewick, Kevin Wayne |
4 Reviews |
![]() |
Functional Programming Principles in Scala École Polytechnique Fédérale de Lausanne — Martin Odersky |
24 Reviews |
![]() |
Algorithms Michael Littman |
1 Review |
![]() |
Algorithms, Part II Princeton University — Robert Sedgewick, Kevin Wayne |
1 Review |
![]() |
Algorithms: Design and Analysis, Part 2 Stanford University — Tim Roughgarden |
1 Review |
14 Reviews
|
3
|
Prior experience in the field: Some basic reading on algorithms/data structures. Like: The programming assignments were interesting, and allowed you to work in whatever language you wanted (But... see "Dislike"). The quizzes were worthwhile as well, as opposed to most online courses. The lecturer is very enthusiastic and engaging. His tone is informal and this makes the material easy (& fun) to absorb. Dislike: Tim Roughgarden's handwriting is a little tough to understand, although he gave ample warning at the beginning of the course. The programming assignments only checked the final output and you couldn't receive too much feedback on your code (But, this provided for some advantages... see "Like"). Suggested improvements: Overall: |
||
|
2
|
It's true. This is a key course! After this course I see algorithms everywhere (not only in computers) and I can analyse and improve them. Here's a real life example (it actually happened): My mother had to order 300 papers, by the ID of some person. Yes I think, this course makes you a little bit smarter. Professor Tim Roughgarden has the minimal perfect examples to show the exact point of every algorithm, you can see all the things that could happen with one of those algorithms and then understand them deeply and better. Also, those rather abstract alghorithms I learned, resulted being tremendously useful in various areas afterwards, for example in networks and artificial intelligence. Finally, the programming assignments are great, they make you get your hands "dirty" and understand very well what really happens. |
||
|
1
|
A full review of this course can be found here: http://henrikwarne.com/2012/05/08/coursera-algorithms-course/ |
||
|
0
|
I signed up for this course to help me better prepare for graduate studies which I will begin a couple of months. Lacking a formal background in theoretical topics of Computer Science, I found this course immensely useful. I did this course concurrently with the Algorithms I course taught by Prof. Sedgewick. I found this combination, though very hectic, ultimately very rewarding. The theory being taught in this course was complimented nicely by the practical Java programming being taught in Prof. Sedgewick's course. |
||
|
0
|
I came at this course without any formal background in computer science. Everything I know I've learned as a result of simply learning as I go. However it occurred to me I could never pass a technical interview because I didn't know the most basic of algorithms that interviewers expect you to know. Pros: Cons: In conclusion I think with a bit more effort this course could be amazing. Having said that I did learn a lot and found this to be a very valuable course. |
||
|
0
|
My first algorithms course. Prof was excellent; explains things in a very systematic and clear way with great examples. |
||
|
0
|
Absolutely superb course, the professor is clearly highly passionate about the topic and does a great job of explaining all the content. One thing I'd recommend is if you aren't too hot on probability then do learn that before the course, it is actually quite important. |
||
|
0
|
What was your prior experience in the field? I work as the a lead software engineer in a Fortune 500 company that contracts work for Defence. What did you learn? Many complicated algorithms and more so than the ones I learned during my University years. Also asymptotic analysis was covered in depth which will definitely come in handy in my current work. Did the course meet expectations? Definitely exceeded! What did you like/not like? Really like the amount of detail put into the lecture videos. But did not like the ambiguity of the way some problem sets were worded. How does this course compare to similar courses? This was my first Coursera course so I do not know how to compare. But compared to my university studies I would say it is equivalent to a 4th year subject. I scored the highest among my peers for my 4th year study yet I found this course quite challenging! |
||
|
0
|
Fantastic course for algorithm. The professor is interesting and the lecture is well organized. Great! |
||
|
0
|
I have been worked as a professional software engineer for 8+ years. My prior experience with algorithms back to high school when I participated in programming contests. 10 years ago a lot of stuff was unclear for me from the theoretical stand point, I just used those efficient QuickSort and Deikstra algorithms. From the course I learned a lot of good material that helped my clarify great thinking behind those "super hits" algorithms. The quality of the lectures, the enthusiasm of the instructor (Tom) were on the highest level. The course exceeded my expectations. I think the only thing that could be improved is some of the programming assignments that were unproportionally easier than others, like those that could be solved with "brood force" methods. I highly recommend the course for everyone who interested in the topic. I should mention that without good background in algorithms and data structures you have no chance to get job in Google, Amazon, Facebook. |
||
|
0
|
If I could give six stars to only one course, that would be it. It was such a pleasure to do this course. If someone makes list of the best teacher they have ever seen, the instructor should certainly make the top of the list. The only downside of the course was that, the instructor was not quite engaging in the forum. But other students nicely filled up that gap. |
||
|
-1
|
The biggest problem with this class, I think, is that it's language-agnostic. At first I thought that would be great - I can use whatever language I'm most comfortable with - but there are big downsides to this. First, you won't get to see sample code from the instructor after an assignment to compare with your own. And second, since so many different languages are in use, it's hard to get help in the forums. I made it through the sorting algorithms, but I had to give up when we got to graph algorithms, because I had trouble implementing the data structures. I think a better approach would have been to pick a popular language such as Java or Python, and conduct the class in that language. The instructor could then provide a code base that included the data structures, and the students could just focus on implementing the algorithms. |
||
|
0
|
Like it a lot. I really appreciate the "analysis" part. The same problems usually approached with 2 algorithms: randomized and deterministic. I definitely will take Part 2 of this class. |
||
|
0
|
This course really helped me improve and understand algorithmic techniques a lot better. The information in the course was thorough and there was a lot of interesting background to the topics in the opening few lectures. The material moved at a quick pace so I did find it a little difficult to keep up some times, but there was a large amount of help on the discussion forums and the community for the course was fantastic. As he says in the opening lectures about how students come back to him and tell him how this course helped them pass an interview, I can not stress how much more prepared I am now for algorithmic questions and problems. Not only do I know how to implement an algorithm better I can explain my reasoning behind why I am using a specific one. Really look forward to starting part 2 |



























