subject
Intro

Coursera: Algorithmic Thinking (Part 1)

 with  Luay Nakhleh, Scott Rixner and Joe Warren
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 course builds on the principles that you learned in our Principles of Computing course and is designed to train students in the mathematical concepts and process of "Algorithmic Thinking", allowing them to build simpler, more efficient solutions to real-world computational problems.

In part 1 of this course, we will study the notion of algorithmic efficiency and consider its application to several problems from graph theory. As the central part of the course, students will implement several important graph algorithms in Python 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.

Recommended Background - Students should be comfortable writing intermediate size (300+ line) programs in Python and have a basic understanding of searching, sorting, and recursion. Students should also have a solid math background that includes algebra, pre-calculus and a familiarity with the math concepts covered in "Principles of Computing".

Syllabus

Module 1 - Core Materials
What is Algorithmic Thinking?, class structure, graphs, brute-force algorithms

Modules 1 - Project and Application
Graph representations, plotting, analysis of citation graphs

Module 2 - Core Materials
Asymptotic analysis, "big O" notation, pseudocode, breadth-first search

Module 2 - Project and Application
Connected components, graph resilience, and analysis of computer networks

14 Student
reviews
Cost Free Online Course (Audit)
Pace Upcoming
Institution Rice University
Provider Coursera
Language English
Certificates Paid Certificate Available
Hours 7-10 hours a week
Calendar 4 weeks long
Sign up for free? Learn how
+ Add to My Courses
Learn Data Analysis udacity.com

Learn to become a Data Analyst. Job offer guaranteed or get a full refund.

Advertisement
Become a Data Scientist datacamp.com

Learn Python & R at your own pace. Start now for free!

Advertisement
FAQ View All
What are MOOCs?
MOOCs stand for Massive Open Online Courses. These are free online courses from universities around the world (eg. Stanford Harvard MIT) offered to anyone with an internet connection.
How do I register?
To register for a course, click on "Go to Class" button on the course page. This will take you to the providers website where you can register for the course.
How do these MOOCs or free online courses work?
MOOCs are designed for an online audience, teaching primarily through short (5-20 min.) pre recorded video lectures, that you watch on weekly schedule when convenient for you.  They also have student discussion forums, homework/assignments, and online quizzes or exams.

14 reviews for Coursera's Algorithmic Thinking (Part 1)

Write a review
2 out of 2 people found the following review useful
2 years ago
Zach completed this course, spending 5 hours a week on it and found the course difficulty to be hard.
This course is the first part of a somewhat challenging conclusion to the specialization. The course is split into several two-week long components, during which you will have to complete a quiz and a machine-graded piece of code. Finally you will have to write additional code and answer somewhat challenging questions Read More
This course is the first part of a somewhat challenging conclusion to the specialization. The course is split into several two-week long components, during which you will have to complete a quiz and a machine-graded piece of code. Finally you will have to write additional code and answer somewhat challenging questions about the week's application. This includes preparing graphs of the runtimes of algorithms or their effectiveness.

As someone with a background in maths, I found this course an excellent way to apply my current knowledge to a programming environment. The applications are extremely interesting and have relevance. The code you write is short, but often you have to write it very thoughtfully. I'm somewhat ashamed to admit that for one of the applications I had to leave my computer running for a few hours because I failed to adequately optimize my code.

Sometimes the programming can be a little bit confusing, although perhaps this is due to my inexperience with Python. For example for one assignment they provide some code for a custom function that is several lines long, when (I believe) it is possible to perform the same task in one line. The lectures help to some extent with some of these concerns, but they're not perfect.
Was this review helpful to you? YES | NO
2 years ago
profile picture
Csaba Koller completed this course and found the course difficulty to be hard.
I took this course back when it was one course, more than a year ago so some things may have changed since. This course is mainly built on understanding maths and not coding, unlike the previous courses in the specialization. The point of the course is understanding algorithmic efficiency of an algorithm. The profe Read More
I took this course back when it was one course, more than a year ago so some things may have changed since.

This course is mainly built on understanding maths and not coding, unlike the previous courses in the specialization. The point of the course is understanding algorithmic efficiency of an algorithm.

The professor Luay Nakhleh is not my favourite teacher. I understood what he taught in his videos, however often that wasn't enough to finish the exam. I should have learned or relearned math which wasn't part of the course. They provided some external links but for me that wasn't enough, although I did well in the previous courses.

The weekly exam had three parts. A test, some coding where the algorithm was given, and we had to make a plot, with mathplotlib or the plotting library of our choice, from the efficiency of that algorithm. There were two weeks to finish these, so I suggest not to procrastinate because if you're like me you won't have enough time.

So briefly: my main concern that the provided material wan't enough in itself to finish the course.
Was this review helpful to you? YES | NO
10 out of 24 people found the following review useful
3 years ago
Prose Simian completed this course, spending 7 hours a week on it and found the course difficulty to be medium.
Good course - comparable to the same professors' IIPP, but a little rougher round the edges - with a fairly challenging final project. One weakness was treatment of the relevant maths, which was a little sketchy.

Rated 1 (& not reviewed at greater length) because it was cynically switched to pay only - and the material split over two courses - with no warning. :(

Was this review helpful to you? YES | NO
0 out of 1 people found the following review useful
2 years ago
profile picture
Anonymous completed this course.
Was this review helpful to you? YES | NO
0 out of 1 people found the following review useful
2 years ago
Félix Pérez is taking this course right now.
Was this review helpful to you? YES | NO
0 out of 1 people found the following review useful
2 years ago
Rajkumar Singh is taking this course right now.
Was this review helpful to you? YES | NO
0 out of 1 people found the following review useful
2 years ago
profile picture
Mark Collins completed this course.
Was this review helpful to you? YES | NO
0 out of 1 people found the following review useful
2 years ago
profile picture
Anonymous completed this course.
Was this review helpful to you? YES | NO
10 months ago
profile picture
Raphael Favero completed this course.
Was this review helpful to you? YES | NO
a year ago
profile picture
Frederick Hill dropped this course.
Was this review helpful to you? YES | NO
a year ago
profile picture
Alex Ivanov audited this course.
Was this review helpful to you? YES | NO
2 years ago
Mark Henry Butler completed this course.
Was this review helpful to you? YES | NO
2 years ago
Colin Khein completed this course.
Was this review helpful to you? YES | NO
2 years ago
Asr completed this course.
Was this review helpful to you? YES | NO