Algorithms: Design and Analysis, Part 2

Provided by:
9/10 stars
based on  5 reviews
Provided by:
Cost FREE
Start Date TBA
Algorithms: Design and Analysis, Part 2

Course Details

Cost

FREE

Upcoming Schedule

  • TBA

Course Provider

Coursera online courses
Coursera's online classes are designed to help students achieve mastery over course material. Some of the best professors in the world - like neurobiology professor and author Peggy Mason from the University of Chicago, and computer science professor and Folding@Home director Vijay Pande - will supplement your knowledge through video lectures. They will also provide challenging assessments, interactive exercises during each lesson, and the opportunity to use a mobile app to keep up with yo...
Coursera's online classes are designed to help students achieve mastery over course material. Some of the best professors in the world - like neurobiology professor and author Peggy Mason from the University of Chicago, and computer science professor and Folding@Home director Vijay Pande - will supplement your knowledge through video lectures. They will also provide challenging assessments, interactive exercises during each lesson, and the opportunity to use a mobile app to keep up with your coursework. Coursera also partners with the US State Department to create “learning hubs” around the world. Students can get internet access, take courses, and participate in weekly in-person study groups to make learning even more collaborative. Begin your journey into the mysteries of the human brain by taking courses in neuroscience. Learn how to navigate the data infrastructures that multinational corporations use when you discover the world of data analysis. Follow one of Coursera’s “Skill Tracks”. Or try any one of its more than 560 available courses to help you achieve your academic and professional goals.

Provider Subject Specialization
Humanities
Sciences & Technology
4567 reviews

Course Description

In this course you will learn several fundamental principles of advanced algorithm design: greedy algorithms and applications; dynamic programming and applications; NP-completeness and what it means for the algorithm designer; the design and analysis of heuristics; and more.
Reviews 9/10 stars
5 Reviews for Algorithms: Design and Analysis, Part 2

Ratings details

  • 5 stars
  • 4 stars
  • 3 stars
  • 2 stars
  • 1 stars
  • 5 stars
  • 4 stars
  • 3 stars
  • 2 stars
  • 1 stars
  • 5 stars
  • 4 stars
  • 3 stars
  • 2 stars
  • 1 stars

Rankings are based on a provider's overall CourseTalk score, which takes into account both average rating and number of ratings. Stars round to the nearest half.

Sort By
Greg Hamel profile image
Greg Hamel profile image
10/10 starsCompleted
  • 116 reviews
  • 107 completed
4 years, 6 months ago
Algorithms: Design and Analysis, Part 2 picks up where part 1 left off. Several of the algorithms and discussions in Part 2 refer back to concepts discussed in the first part, so it is highly recommended to complete part 1 first. A few of the major topics covered include minimum spanning tree algorithms, the knapsack problem, dynamic programming, shortest path problems, the traveling salesman problem, P vs. NP and NP completeness and heuristics for hard problems. Part 2 is considerably harder than part 1 and the algorithms you write for homework need to be implemented well to get answers in a reasonable amount of time and without exceeding your system's memory. It is possible to complete the class using a high-level language (I used Python) but you'll probably have to spend a bit more time tweaking your code to get solutions in a reasonable amount of time. Like part 1, the instruction quality and assignments are top notch. My biggest... Algorithms: Design and Analysis, Part 2 picks up where part 1 left off. Several of the algorithms and discussions in Part 2 refer back to concepts discussed in the first part, so it is highly recommended to complete part 1 first. A few of the major topics covered include minimum spanning tree algorithms, the knapsack problem, dynamic programming, shortest path problems, the traveling salesman problem, P vs. NP and NP completeness and heuristics for hard problems. Part 2 is considerably harder than part 1 and the algorithms you write for homework need to be implemented well to get answers in a reasonable amount of time and without exceeding your system's memory. It is possible to complete the class using a high-level language (I used Python) but you'll probably have to spend a bit more time tweaking your code to get solutions in a reasonable amount of time. Like part 1, the instruction quality and assignments are top notch. My biggest gripe with the class is that the coverage of the P vs. NP question and NP completeness is brief, so students don’t gain a deep understand of what P vs. NP and NP completeness really mean. Introduction to theoretical computer science by Udacity provides a much more through overview of that particular topic. That said, Algorithms: Design and Analysis, Part 2 is another outstanding offering by Stanford and Coursera.
Was this review helpful? Yes1
 Flag
Steven Frank profile image
Steven Frank profile image
10/10 starsCompleted
  • 59 reviews
  • 57 completed
3 years ago
Although this course picks up where Part 1 left off in terms of topics covered, it's a whole different experience in terms of difficulty. Whereas Part 1 stressed concrete concepts like sorting, searching, and asymptotic analysis, Part 2 soars into the esoteric world of graph theory, NP completeness, and proofs. The algorithms are not so much harder to code than in Part 1, but the data sets may tax the limits of your system -- you may have to find some tricks to simplify the processing in order to get an answer, and those tricks are not really part of the course; you're on your own, with the help of your fellow students. As in Part 1, Tim Roughgarden is an awesome teacher. In fact he's so unpretentiously articulate, and so down to earth, that you may sometimes lose sight of how complicated what he's talking about really is. Don't worry, though, the problem sets and programming assignments will ensure that you've really grasped th... Although this course picks up where Part 1 left off in terms of topics covered, it's a whole different experience in terms of difficulty. Whereas Part 1 stressed concrete concepts like sorting, searching, and asymptotic analysis, Part 2 soars into the esoteric world of graph theory, NP completeness, and proofs. The algorithms are not so much harder to code than in Part 1, but the data sets may tax the limits of your system -- you may have to find some tricks to simplify the processing in order to get an answer, and those tricks are not really part of the course; you're on your own, with the help of your fellow students. As in Part 1, Tim Roughgarden is an awesome teacher. In fact he's so unpretentiously articulate, and so down to earth, that you may sometimes lose sight of how complicated what he's talking about really is. Don't worry, though, the problem sets and programming assignments will ensure that you've really grasped the material. When you've finished both parts of this course, you'll really have canvassed the landscape -- not only of specific algorithms, their structures and performance limits, but of some foundational questions in computer science.
Was this review helpful? Yes0
 Flag
timothy235 profile image
timothy235 profile image
10/10 starsCompleted
  • 12 reviews
  • 10 completed
2 years, 10 months ago
Both courses were excellent. These courses are language agnostic. So taking these, even if you've seen the material before, is a great way to teach yourself a new programming language.
Was this review helpful? Yes0
 Flag
soesilo wijono profile image
soesilo wijono profile image
10/10 starsCompleted
  • 19 reviews
  • 19 completed
4 years, 1 month ago
As with the first part, this course is a good and precious algorithm course. In my opinion this is another required course before taking more advanced discrete-optimization course The programming assignments were more challenging than I was expected because standard algorithm wouldn't solve the problem in appropriate time. You'll need to think laterally and following the discussion forum to be able to run your program in reasonable time. Just to use standard algorithm will bring you to run your program in hours even in days due to the huge data samples to be processed. The same as part 1, the keys of success are, (1) watch all the lectures, (2) read the textbooks, (3) write the programming code, (4) follow the discussion forum. That's all.
Was this review helpful? Yes0
 Flag
Henrik Warne profile image
Henrik Warne profile image
9/10 starsCompleted
  • 2 reviews
  • 2 completed
5 years, 4 months ago
This course continues where part 1 left off. The main themes covered were greedy algorithms, dynamic programming and NP-Complete problems. The lectures were excellent, with clear and easy to follow algorithm development and proofs. The quizzes and programming problems were harder than those in part 1. Overall a very good course that I learnt a lot from. A much longer review is available here: http://henrikwarne.com/2013/02/18/coursera-algorithms-course- part2/
Was this review helpful? Yes1
 Flag

Rating Details


  • 5 stars
  • 4 stars
  • 3 stars
  • 2 stars
  • 1 stars
  • 5 stars
  • 4 stars
  • 3 stars
  • 2 stars
  • 1 stars
  • 5 stars
  • 4 stars
  • 3 stars
  • 2 stars
  • 1 stars

Rankings are based on a provider's overall CourseTalk score, which takes into account both average rating and number of ratings. Stars round to the nearest half.