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.
Sep 26, 2018
An incredible course that covers a lot of vital algorithm on graphs and strings. I learned a lot of new material that I hadn't known before. Thank you very much for this amazing course!
автор: Shivraj Rana•
Feb 10, 2019
best course available on algorithms
автор: Stratos Doukakis•
Feb 04, 2019
автор: Марченко Дмитрий•
Feb 04, 2019
автор: Du Liu•
Jan 27, 2019
One of the best courses, challenging, enlightening and fun!
автор: DANISH MUSHTAQ•
Jan 24, 2019
i love it
Jan 10, 2019
concise, interesting, in-depth
Jan 08, 2019
автор: Geng Xue•
Jan 07, 2019
Contents is good, but the lecturer's sounds is not clear and low voices.
автор: Son Ngoc Dinh•
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.
автор: Maruf Hassan•
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.