Chevron Left
Back to Algorithmic Thinking (Part 2)

Learner Reviews & Feedback for Algorithmic Thinking (Part 2) by Rice University

213 ratings

About the Course

Experienced Computer Scientists analyze and solve computational problems at a level of abstraction that is beyond that of any particular programming language. This two-part class is designed to train students in the mathematical concepts and process of "Algorithmic Thinking", allowing them to build simpler, more efficient solutions to computational problems. In part 2 of this course, we will study advanced algorithmic techniques such as divide-and-conquer and dynamic programming. As the central part of the course, students will implement several algorithms in Python that incorporate these techniques and then use these algorithms to analyze two large real-world data sets. The main focus of these tasks is to understand interaction between the algorithms and the structure of the data sets being analyzed by these algorithms. Once students have completed this class, they will have both the mathematical and programming skills to analyze, design, and program solutions to a wide range of computational problems. While this class will use Python as its vehicle of choice to practice Algorithmic Thinking, the concepts that you will learn in this class transcend any particular programming language....

Top reviews


Mar 24, 2018

Great class...Luay's lectures and problem sets were a great continuation to what Joe and Scott started. I suppose I will get started on Course 7 shortly.


Apr 28, 2018

Excellent class in the series. Even if computational biology is not your thing, the assignments are really interesting, fun and informative.

Filter by:

1 - 25 of 39 Reviews for Algorithmic Thinking (Part 2)

By Daniel W

Jan 8, 2020


Lots of good material to learn. Challenging. Lectures are easy to understand.


More dense, textbook-jargon "CS major" feel to this class than the others. Expect to spend more hours and have less fun vs. parts 1-4. Much easier to get discouraged. Major problems waiting for assignments to go through peer grading process, sometimes taking *weeks*.


More basic handouts such as: 1) Set notation cheat sheet. 2) Pseudocode examples fully decoded into simple language. Also, watching a visualization of the base-pairing algorithm (Needleman-Wunsch) is highly recommended for understanding what you're trying to do. You can google it, but it would be nice if they added it to the course. Also, more smiling.

In summary, it's a challenging course and I'm a better programmer for having finished it. However, it's more daunting, took me longer, and lacks the easy going/encouraging/illustrative style of the earlier courses. Peer grading takes way too long, especially if you're paying for a subscription.

(My review applies to both Algorithmic Thinking Parts 1 and 2)

By Kasey C

Dec 17, 2016

This class gets very math and theory heavy, so I would not recommend it for those looking for programming practice with the algorithms/programming approaches presented in this class. If you want thorough theoretical background information, this class would be a better fit.

The use of RNA secondary structure alignment as an example of dynamic programming implementation is overkill. There are much simpler ways to introduce dynamic programming.

By Alvin L

Nov 22, 2017

What the professor explains he explains well, but there is a lot of stuff in the homework assignments that is not explained

By Roberto M

Jun 10, 2019

The content is great, but it is taking ages for me to have my last assignment reviewed

By Pini K

Aug 12, 2016

I took all 5 previous courses in this series and they were all great.

But suddenly Coursera has changed its policy, and one can not take courses for free anymore.

If you just want to learn and gain knowledge without chasing the certificate, than the course is useless, because you can't receive feedback for your work.

By Rudy H

Mar 15, 2019

Great course, needs a lot more computational brain power than any of the courses in the specialization. Very little to no spoon feeding, but the forum and class notes have adequate info. It is very beneficial to have this kind of experience of a close to a real life situation in a course. No company as i know will pay anyone to be spoon fed. Thank you very much to Prof. Luay and all others that are involved.

By Shuxian Z

Oct 16, 2017

Very impressive and full of challenge. Really learn a lot . Data clustering and sequence alignment are very practical and interesting problems, divided and conquer and dynamic programming skills are very impressive and powerful. I really enjoy myself in this course. And I've got a feeling like that all things are connected to each other, math , programming and real life. Thank you so much for Luay!

By Jiaxing B

Sep 23, 2016

You cannot get easy answers for homework and it pushes you to think hard.

By Samuel J

May 26, 2016

Super good, challenging course that forces you to think.

By MacMike

Aug 19, 2020

At times, I felt the need for slightly more instruction.

Then again it's good to be thrown in at the deep end and, writing code eventually helps comprehension.

It felt great to conquer the questions we were given.

Now I have to go back over the past six courses and write them up a little more before it becomes too hazy.

Thank you

By Max B

Mar 21, 2019

Oh man, I hade so much fun in this course! The lectures and material are very good, and everything is wrapped up in much fun projects and applications where you will learn a lot. I especially enjoyed the more mathematical approach in AT compared to PoC and IIPP, and also the general class structure! Highly recommended!

By Tudor B

Apr 4, 2021

This part completes where you left off in the first part. You'd find efficient Sorting, the Master Theorem, Data Clustering or playing around with strings in Dynamic Programming a fun and challenging journey!

By Rohan L

Mar 25, 2018

Great class...Luay's lectures and problem sets were a great continuation to what Joe and Scott started. I suppose I will get started on Course 7 shortly.

By Julian O

Apr 28, 2018

Excellent class in the series. Even if computational biology is not your thing, the assignments are really interesting, fun and informative.

By Kenneth L

Nov 17, 2016

This is a challenging course that teaches an invaluable problem solving approach, applicable in many domains.

By Bakhmai B

Sep 18, 2020

Here the best teachers and very useful materials on algorithmic thinking. Thanks everyone for this course.

By A&Tower

Aug 18, 2016

great, but really difficult for people with poor reading and writing skill to finish.

By Tairan Y

May 13, 2018

Great course!

Definitely learned a lot from the process of doing projects

By Vern K

Jul 26, 2018

Course and assignments were very well thought out and informative.

By Andrew F

May 28, 2018

Another fantastic course from the team at Rice - thanks guys!

By Michael B

Dec 16, 2017

Yet another great course in this specialization

By Yvan S

Oct 19, 2016

The last awesome course on computing science.

By Jaehwi C

Jan 11, 2018

Great course to learning computer science!

By Tianyi Z

Oct 26, 2016

Great course, problem solving oriented

By Ray K

Aug 19, 2017

Challenging and enjoyable!