This course covers the essential information that every serious programmer needs to know about algorithms and data structures, with emphasis on applications and scientific performance analysis of Java implementations. Part I covers elementary data structures, sorting, and searching algorithms. Part II focuses on graph- and string-processing algorithms.
All the features of this course are available for free. It does not offer a certificate upon completion....

Jan 21, 2018

Pretty challenging course, but very good. Having a book is a must (at least it was for me), video lectures complement book nicely, and some topics are explained better in the Algorithms, 4th ed. book.

Apr 17, 2019

Amazing course! Loved the theory and exercises! Just a note for others: Its part 1 had almost no dependency on book, but this part 2 has some dependency (e.g. chapter on Graph) on book as well.

筛选依据：

创建者 Maruf H

•Jan 02, 2019

I've completed both Part I and Part II. So my review belongs to two of the courses.

I took this course to gain a better understanding of data structures and algorithms and also to learn more about the Java language.

Best way to learn algorithms is through visualization. In this course, Professor Sedgewick slowly but steadily presents each algorithm and data structure with dynamic visualization. The animations really help to clarify exactly how the algorithms process the data and solve a problem.

Another important aspect is that this course discusses the implementation details of the algorithms by using Java programming language. They developed a java library where almost all the algorithms in a traditional algorithm text-book have been implemented. It's really satisfying to read such nice, concise and elegant code.

I started this course with an intermediate level of knowledge on Java. That's why it was pretty easy for me to keep pace with the implementation challenges. However, I learn and apply many java specific technique such as generics, iterator, object equality, immutability, testing etc. in-depth in this course. From my experience, I would recommend, to get the most out of the course, you should have a little bit of programming experience in Java.

In order to pass the course, you have to complete a programming assignment in each week. The assignments are well written, pretty much challenging and fun to solve. You will get the feelings to solve large-scale complex problems. They expect you to spend 3-5 hours for an assignment to pass (80%) each assignment. However, I lost track of how much time I spent to chase the benchmarks for 100% in each assignment. You will definitely have a challenging time to score 100%.

The evaluation system of the assignment is very sensitive. You have to maintain a prescribed API, otherwise, your solution will not be accepted. I wonder about their effort, how much time they spend to make such unit testing code. In some cases, I see that they wrote 1200-1500 lines of unit testing code to check our only 200-300 lines of solution, definitely praiseworthy!

Overall, this was a great course and it was a great opportunity for me to take such an enriched algorithm course. I highly recommend it to every serious programmer who wants to learn more about data structures, algorithms, and the Java language.

创建者 Jack

•Oct 29, 2019

Great course, a little fast paced, and more advanced than the first. But you'll get high quality animations of the graph and string algorithms and fun assignments that will make you better at Java. Maybe the best explanation of radix sorting I've ever seen. The optional last week of the course introduces linear programming, reductions, and intractability which serve as motivational primers for further study. My only gripe is wanting more assignments, maybe one for each lecture, but 5 are likely enough for most people.

创建者 Qi Z

•Aug 19, 2018

This class is amazing. If you follow this course schedule strictly, and finish the homework and interview questions, you are gonna to learn a lot of algorithm thinking methods.

创建者 Hinanawi T

•Feb 08, 2020

The algorithms are more difficult than part I, nevertheless Sedgewick's vids are still easy to understand. The only drawback maybe chapter 3, max flow min cut part, which is not very clarified.

创建者 Geng X

•Jan 07, 2019

Contents is good, but the lecturer's sounds is not clear and low voices.

创建者 Guilherme Z

•Dec 23, 2017

This is a great course on algorithms if you have a basic understanding of programming and need a solid basis for understanding algorithms. As an added bonus you will learn one or two things about Java, if you have little experience with the language. This course gives a great overview of the most important algorithms used in computer science with a great amount of discussion about their properties and areas of current research. The course has great material which the authors have put many years of thought and works very well. Finally, I was really happy with the assignments which were challenging but doable. They were not just simple repetition of the topics of the course but they added value and made me a better programmer. Well done for making such a great course available!

创建者 Karpov A

•Jan 06, 2018

I want to thank those who created this course, esp. K.Wayne and R.Sedgewick for presenting this opportunity. Along with Part I it was my first online course on algorithms. Finished part I in 2014. And the Part II in 2016 and then attended it again in 2017. These courses has good programming assignment with very detailed evaluation which is really helpful and makes me find better solution. Problems and questions vary from easy to hard ones and let me progress steadily keeping my interest high. Java language was new to me and probably courses needs to add some other languages (C++, Python, C#). The course has great support materials at the site and in the book. It is detailed and goes along with lectures. I would recommend this course to other.

创建者 Ahmad A

•Mar 12, 2018

One of the best courses out there. The lectures are very concise and precise. They demand your full attention but reward you with a deep understanding. The homework exercises are very enjoyable with a great mix between implementing your own algorithms and carefully selecting appropriate algorithms and using them correctly to yield the correct solution with the optimal performance characteristics. By the end of the course, you will have a great understanding and appreciation for the most important algorithms in computer science.

创建者 shant c

•Jun 14, 2019

So finally I got a chance to finish this course. And no surprise the experience was very fulfilling and awesome. The explanation by Dr. Robert and the assignment designed for each week are of very high quality. As usual the assignments have practical applications. The available libraries will save you time from implementing the basic API and focus at algorithm level and reinforce the learning. I would like to thank Dr. Robert, Dr. Kevin, and the mentors for creating this awesome course. I would highly recommend this course.

创建者 Gil F

•Jan 29, 2018

This is a brilliant course in which the authors have put a lot of effort to explain algorithms in a very understandable way. For me - a regular coder with no academic background - it is the best algorithm course to date due to the precise and detailed way of presenting concepts (I have already completed 5 of them). Apart from that the assignments were really excellent and the autograder feedback has pointed me to certain weaknesses in my coding practices. No complaints, just lots of praise for this brilliant course.

创建者 Gautam S

•Jan 07, 2018

This is a very well crafted and information packed course. The videos are composed with just the right mix of technicalities and anecdotes to make the viewer engaged. Best part of it though are the exercises at the end of weeks.They are picked in a manner that they're not just that week's topics but more of a cumulative knowledge you'd have acquired through out the previous weeks.

Thanks Robert Sedgewick, Kevin Wayne, Coursera for putting it out there. Highly recommended.

创建者 yusuf s c

•Dec 02, 2017

Great course. Very informative, very challenging. If you think Mr. Sedgewick is talking a bit boring I recommend to watch the videos 1.25x. He have very funny stories.

I should thank all of the people who supported/build this course.

Only 1 little tiny downside is sometimes for programming exercises you struggle with technical (non-algorithmic) details which is boring.

The only course that I'm planning to take again

创建者 WAN , Y

•Aug 20, 2018

One of the parts I like for this course is the assignment. The assignment is to implement the algorithm which is useful in practice. Thinking how to implement each and running each after implementation are entertaining and make me think about the algorithm deeply. An introduction to the various algorithms for different type of problems broaden my horizons.

Thanks for providing this wonderful course.

创建者 Danijel T

•Mar 26, 2019

This is really wonderful course with amazing instructors, supportive community and top notch material. I would recommend this course to anyone, it will change the way you think and approach problems.

I have been apple to apply some of the things thought in the course to a couple of very hard problems in the company i work at. Until that point nobody had an idea how to solve these problems.

创建者 Tomasz K

•Nov 25, 2017

The great and professionally conducted course. Step-by-step examples of the execution of the described algorithms, weekly tasks and the real-life applications of the algorithms are one of the things that make this course so valuable.

Moreover, the quick response of Dr Kevin Wayne and the fix of an issue with the grader output in one of the assignments was a nice surprise.

创建者 KINER B S

•Feb 17, 2019

This was a wonderful course which covers very interesting topics. I liked the assignments; all were based on interesting and challenging practical problems. The lectures gave a very simple and straightforward explanation to concepts. Thanks to the professors for the amazing resources and also to the mentors who helped throughout the course with assignments and doubts.

创建者 Fabio C F

•Apr 29, 2018

Challenging, but rewarding. This is the state of the art when it comes to online courses. It doesn't get much better than this. Topics can be a bit hard to crack at a first glance, but explanations are done in such a way that complexity is built up appropriately and incrementally. With the right amount of diligence, you are able to wrap your head around eventually.

创建者 Jakub C

•Jul 01, 2018

Professor Sedgewick is a terrific instructor and this course teaches you to implement famous algorithms to solve very interesting homework problems. Wonderful combination of more theory (Stanford algo course) with more practice (Princeton algo course). This course is rigorous too but if you take both you will see the different areas of focus.

创建者 hardy

•Nov 08, 2017

Although I have not finished this course, I feel that this course is useful for that I have learned a lot in this course, including but not limited to, basic data structure, sort algorithm, graph etc. In fact, it's better to choose Algorithms, Part One before taking this course. To sum up, this course is very very nice.

创建者 陈学海

•Mar 02, 2018

This is a very fantastic course, it is very luck for me to have this course. I've learned a lot of things from the part1 to part2. Prof. Sedgewick and his team's work on the videos and homework design is beyond my expectation, I'm very respect for that, thanks a lot. Hope I can take more courses like this one.

创建者 Anton H

•Feb 22, 2019

Very interesting and useful course. It gave you background in the most algorithms and data structure. It had changed my mind. One notice here... The assignment some times quite challenging and some of them had taken from me about 5 days, however some of them could be really resolved during 3-5 hours. Thanks!

创建者 Guru K

•Jan 05, 2018

Excellent course for those who are interested in improving their algorithmic thinking and programming skills. The topics covered in this course and the programming assignments not only challenged my programming skills, but renewed my confidence level to face any complex programming challenges.

创建者 Son N D

•Jan 06, 2019

Great course! You're going to learn about algorithms and data structures for graph and string processing. The programming assignments are really interesting and is an important part of the course. You need some familiarity with Java and the course's Java library though.

创建者 Nguyen T T

•Jan 26, 2018

This course will strengthen and extend the base knowledge of algorithms which has been laid out by the Part 1. The resources on the website and the book are enough for much more than 6 week duration, if you are willing to self study all of them.

创建者 Michaelbear

•Sep 20, 2019

This is a wonderful class which walks you through the every basic and crucial concepts of the algorithms and data structure. Really helpful! I'd recommend this course to anyone who wants to have a profound understanding of computer science.