#277 overall
Algorithms: Design and Analysis, Part 2
Coursera
2 recommenders · 2 threads · recommended in 2 years, 2013–2015 · score 1.8
Part 2 of Tim Roughgarden's Stanford algorithms sequence on Coursera, continuing from Part 1 with further algorithm design and analysis topics. It is a video-lecture course with programming assignments.
Commenters recommend it as the Stanford Roughgarden algorithms course that they found more engaging than the Princeton alternative.
Algorithms & Data Structuresintermediatefreevideo lectures#algorithms#analysis#graph algorithms#roughgarden#coursera
Recommendations by year
20062026
I found the video lectures for this course extraordinarily boring compared to the Stanford algorithms courses taught by Roughgarden. Sedgewick is a brilliant computer scientist, but those videos really put me to sleep.
Both classes are still solid offerings from Coursera, but having gone through both levels of both, I'd recommend the Stanford ones first.
Also, I don't know if this has changed, but the programming assignments required a custom Java installation provided by Princeton with a bunch of extra packages specifically for the course. I found that a little weird compared to the Stanford class's approach of just giving you an input file and verifying the output provide (ala a coding competition).
CLRS is quite 'academic' and requires good understanding of mathematics. It's a great book, but not a good one for beginners, imo. It will be difficult as self study for first timers. You can start with Datastructures and Algorithm Analysis in C by M. A. Weiss[0]. One more alternative is The Algorithm Design Manual by S. Skiena[1]. It's also good and focuses more on algorithm, implementation (as opposed to math-y stuff of CLRS). If I were you, I would get both the books and read alternatively. Don't miss out on exercises, they are very important.
I also suggest you to join this Coursera course, Algorithms: Design and Analysis by Tim Roughgarden[2]. Currently the course is open, so you can sign up for classes. The course is offered in two parts[3], complete both of them.
Once you are comfortable with basic concepts start solving questions/puzzles online on sites like SPOJ[4], UVa[5], (YC-funded) HackerRank[6]. You could try TopCoder[7] also, but the questions are bit difficult. Hope this helps.
PS - You should study math, because it is important in Algorithms Analysis. You could try reading required parts of Concrete Mathematics by Knuth[8] or as you come across new concepts, Google and understand them.
[0] - http://www.amazon.com/dp/8177583581
[1] - http://www.amazon.com/dp/1848000693
[2] - https://www.coursera.org/course/algo
[3] - https://www.coursera.org/course/algo2
[4] - http://www.spoj.com
[5] - http://uva.onlinejudge.org
[6] - http://hackerrank.com
[7] - http://www.topcoder.com
[8] - http://www.amazon.com/dp/0201558025