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....

Jun 01, 2017

This is a great class. I learned / re-learned a ton. The assignments were challenge and left a definite feel of accomplishment. The programming environment and automated grading system were excellent.

Jun 11, 2017

Incredible learning experience. Every programmer in industry should take this course if only to dispel the idea that with the advent of cloud computing exponential algorithms can still ruin your day!

필터링 기준:

교육 기관: KINER B S

•Oct 29, 2018

This course is a really good intermediate-level course. The course content is really good and interesting. It covers all the points which are necessary to study algorithms. I particularly found the assignments most interesting and challenging. The most interesting was the autograder. It tested each and every case and deducted the points if any case failed. So to score full, one has to work really hard.

I thank the instructors for this wonderful course and also to the mentors who actively supported on the forums.

교육 기관: Mrunmoy S

•Aug 14, 2019

I wanted to refresh my algorithms to get ready for more challenging work. This course is awesome! It gave me a head-start to start tackling programming problems.

I am grateful to the instructors to make such a course available for people like me who are not only physically far but also have less time each week due to full time work commitments. I am glad I took this course and diligently attempted the assignments. Courses like these makes me a better programmer. Next, I am headed to Algorithms-II. Cheers!

교육 기관: Dávid S

•Aug 19, 2017

The course is absolutely awesome! A lot of practical information about methods and about general thinking approaches that are essential for anyone who has to write efficient code for solving various problems.

I also want to highlight the very high quality slides and presentations, it is clear that the creators of the course made a lot of effort in it.

Finally, I really liked the programming assignments and the way they gave feedback about the correctness of them!

Thank you very much for your work!

교육 기관: 张佳乐

•Mar 25, 2018

3 month later, i'am come back, and finally complete this well-known course.

If you just familiar with java, i strongly recommend you don't enroll this course, accomplish at least 80 problems in Leetcode before take the course, the explore -> learn -> tree category helps me understood recursion.

This course is a big challenge to me, but when i finish it, i not only learnt algorithm knowledge, but also debugging skills.(I understand why some people use "println" instead of "breakpoint")

Thank you...

교육 기관: Hinanawi T

•Sep 02, 2019

The course is easy to understand and its prerequisite is acceptable to high school students. Thanks to R.Sedgewick and other authors.Though English is not my first language, but the course formulated the algorithms and data structures by a comprehensive way that could be learnt by a people without much exps. BTW, the programming assignments have a complex online grader, finishing those assignments will greatly develop your ability of applying algorithms and debugging as well.

교육 기관: Joshua M

•Mar 06, 2018

Thorough introduction to the study and application of Algorithms. Assignments are challenging yet achievable. Entertaining and informative lectures.

For those considering taking the course; I had no previous experience with Java, and only high-school level Math (barely). You can get through. You may better appreciate some of the material with more Mathematical maturity, but it isn't absolutely necessary - don't let the maths discourage you, pick it up as you need it.

교육 기관: Dan P

•Feb 18, 2018

Fantastic course. Great in-depth discussion of various algorithms, and the hands-on approach to implementation is a welcome change from pure theory classes (although you get plenty of that, too). The programming assignments were a real eye-opener as to the power of carefully designed algorithms.

The full potential of the course is best realized with the accompanying textbook and the huge amount of material available on the booksite (which is free).

교육 기관: Bhavya N

•Jan 25, 2018

I simply loved this course a lot. I tried to start and finish this atleast 5 times previously, but never was I able to go past 3-4th video. But then I decided to do it one time by whatever means possible. And when I did finish it, I started to love Data Structures and Algorithms. I am now having some knowledge about how we use DS n Algos to solve some of the most trivial problems. Thanks a lot to the creator of this course, You are a GOD to me.

교육 기관: Yuanrui Z

•Nov 17, 2018

For a non-English speaker, the professor introduced and analyzed details and design soul of each algorithm in a simple but accurate way. If 10% of my country's university can treat education in such a delicate attitude, great willings of a crowd of ambitious students would not be failed, I think.

In addition, the assignment is instructive and well-designed, which benefited me a lot whenever I was trying to work it out or after finished it.

교육 기관: Manuel P

•Nov 07, 2016

A great introduction to fundamental algorithms. This course is very well thought-out, the instructor always makes his points very clearly an convincingly: more than just algorithms, this course transmits a way of thinking about them. The material is very well polished, you can feel the instructor has been teaching this topic for so many years. In addition to all of this, the programming assignments' topic are generally quite exciting.

교육 기관: Brian C

•Dec 08, 2016

This course gives a very good overview of algorithms, justifying each new data structure or technique by examining the performance and technical problems that it is trying to solve, and explaining the meaning of the approach. It is a good idea to do a good bit of coding on your own, however, as the Assignments typically expect you to USE the data structures explained in the lectures from a static library rather than hand-coded.

교육 기관: Visual J

•Jun 22, 2017

I've not merely learnt lots of practical methods to solve the specific algorithm problems within this course, moreover, I've been able to manage to cope with other else algorithm problems, cuz, this course has taught me the through and thinking of using algorithm to solve a problem, including to understand an algorithm, and use it, and eventually get a solution to any specific problem.

Thanks to Professor Robert Sedgewicks

교육 기관: chenxc

•Jul 28, 2017

Recommend print the ppt then listen to the lecture cuz that would save your time. These homework impresses me deeply, and I did spend a lot of time completing them. Fortunately, I got a not-bad accomplishment at this class. I think everyone would like to have a solid foundation on algorithm as long as s/he study hard in this class. Thanks a lot for providing such a great open class! I love you professors! I love princeton!

교육 기관: Rohit P

•Apr 09, 2017

I took this course to refresh my Data Structures and Algorithms knowledge in order to prepare for technical interviews, and I'm glad I did. The lectures are great and the programming assignments are very well designed and have sufficient guidance. You really have to work on them. I would have liked more graded MCQs after lectures. This is also the first MOOC I've completed, and it gives me a great sense of accomplishment!

교육 기관: Vadim P

•May 16, 2020

Very interesting, I finally started to study seriously and learnt a lot, by using the correct Data Structures (and also learning them), learning sorts, I enjoyed a lot, and found very interesting exercises, I learnt the definition of Binary Heap, how better implement the Priority Queue Data Structure, Binary trees, and very fascinating the way Red Black Tree is implemented, and the technique used to maintain it balanced

교육 기관: Kat

•Oct 18, 2016

The grading system is very helpful for debugging

A little suggestion, personally i would not go to the forum unless i meet problems, but actually i find i may missed some great thinking for ignoring it. It would be better if there is a subscription feature like what's trending on the Forum to reminder learners to participate in the discussion.

And i like the every week's interview question, thank you for all your effort!

교육 기관: Itsik S

•Mar 28, 2018

A very interesting course, very well taught. The course is carried out in a very methodological way, builds the knowledge gradually step by step. The course is suitable both for those who know the material and want to refresh their knowledge and for those who learn this for the first time.

Finally, I would like to say that it was a privilege as much as it was enjoyable to learn from the great Prof. Robert Sedgewick !

교육 기관: seshu c

•Oct 27, 2019

One of the best course, I have taken so far. Learned a lot and its good to learn from computer scientists who can explain the trade offs between different data structures. To be frank, i am a newbie and i don't even have a good understanding of data structures when i started this course. But now, i know how the data structures work and how to use them them effectively.Except that the assignments are a bit tuff!!

교육 기관: Henrique G

•Jan 16, 2017

I really enjoyed this course. The material and videos were carefully made and very informative. The assignments were made that you can properly use the content learned from the lessons. The mentor/instructors are very knowledgeable. It goes without saying the instructors are reference in the Algorithms field.

It is worth saying the assignments may require you to research extra resources, e.g. Algorithms 4th book.

교육 기관: Luoqi W

•Dec 25, 2017

This course is extremely well-organized and covers the foundational algorithmic concepts in a meticulous fashion. Dr. Sedgewick makes these concepts accessible and easy to grasp. The fact that every concept covered is not just discussed on paper but realized in Java code also adds invaluable practical significance. Needless to say, this should be the course that every aspiring computer scientist should take.

교육 기관: Teng B

•May 09, 2019

The Most Remarkable Course I have met in Coursera. This course not only taught Algorithm & Data Structure but also fundamental things about Java Language. The instructor is well prepared and states concepts very clear with plenty of examples to help us understand. The assignments with well designed grader are a huge plus to this course. I rate this course as 5-star for this is the highest rate I can give.

교육 기관: Manish J

•Mar 31, 2018

Many thanks to Prof. Sedgewick and Mr. Wayne for this great work for education. This course and this book, the material is just awesome. It really appreciate this work sir ! This course has helped me a lot. The resources your book site has is like a complete teacher for me. The assignments in this course are challenging and improve the skillset a lot!

Finally a load of thanks for such a wonderful course !

교육 기관: Erik Z

•Nov 07, 2017

This was actually a very nice course. I found professor Sedgewick to be a very engaging lecturer, and his patient explanations along with excellent lecture notes helped me, more than a single book could have done, to thoroughly understand all algorithms that were discussed in this course. The assignments were sometimes challenging, but they were always doable. I cannot recommend this course highly enough.

교육 기관: Haotian Z

•Nov 14, 2016

Very solid course. Well explained and informative content and straightforward algorithm illustrations. It not only explains and analyzes mechanism of algorithms, but also offers a set of very practical Java implementations. The weekly programming assignment is awesome. They are well-designed and closely related to real-world application. This is a extraordinary course and I enthusiastically recommend it.

교육 기관: Anthony T

•Jun 30, 2020

I really enjoyed the programming assignments! I think it was cool that all of them had some sort of visualization component. It helped when debugging code. The lectures were solid as well. It's been a few years since I took my Algorithms course and this was a great refresher on some of the stuff that I missed. I also got to learn about topics that were not covered in my Algorithms class (e.g. Kd Trees).