About this Course
4.7
142 ratings
25 reviews
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....
Globe

100% online courses

Start instantly and learn at your own schedule.
Calendar

Flexible deadlines

Reset deadlines in accordance to your schedule.
Intermediate Level

Intermediate Level

Clock

Suggested: 4 weeks of study, 7-10 hours/week

Approx. 19 hours to complete
Comment Dots

English

Subtitles: English, Spanish

Skills you will gain

AlgorithmsPython ProgrammingAlgorithmic EfficiencyDynamic Programming
Globe

100% online courses

Start instantly and learn at your own schedule.
Calendar

Flexible deadlines

Reset deadlines in accordance to your schedule.
Intermediate Level

Intermediate Level

Clock

Suggested: 4 weeks of study, 7-10 hours/week

Approx. 19 hours to complete
Comment Dots

English

Subtitles: English, Spanish

Syllabus - What you will learn from this course

1

Section
Clock
3 hours to complete

Module 3 - Core Materials

Sorting, searching, big-O notation, the Master Theorem...
Reading
13 videos (Total 147 min), 2 readings, 1 quiz
Video13 videos
The sorting problem 11m
A simple quadratic algorithm 10m
Illustrating MergeSort 13m
The recurrence for MergeSort 9m
The Master Theorem and MergeSort efficiency 12m
Linear vs. binary search 12m
Efficiency of binary search 10m
Class structure (from part 1)9m
Coding styles and standards - PoC11m
Testing and machine grading - PoC10m
Plotting data - PoC14m
Peer assessment - "We want a shrubbery!" - IIPP10m
Reading2 readings
Class notes10m
Coding notes10m
Quiz1 practice exercise
Homework #340m

2

Section
Clock
5 hours to complete

Module 3 - Project and Application

Closest pairs of points, clustering of points, comparison of clustering algorithms...
Reading
4 readings, 3 quizzes
Reading4 readings
Project #3 Description10m
Tests and Tips for Implementing the Clustering Methods10m
Application #3 Description10m
Application #3 Solution10m

3

Section
Clock
2 hours to complete

Module 4 - Core Materials

Dynamic programming, running time of DP algorithms, local and global sequence alignment ...
Reading
7 videos (Total 87 min), 1 quiz
Video7 videos
A dynamic programming algorithm 14m
Illustrating the DP algorithm 11m
Running time of the DP algorithm 8m
DP vs. recursive implementation 13m
Global pairwise sequence alignment 14m
Local pairwise sequence alignment 8m
Quiz1 practice exercise
Homework 434m

4

Section
Clock
4 hours to complete

Module 4 - Project and Application

Computation of sequence alignments, applications to genomics and text comparison...
Reading
1 video (Total 8 min), 3 readings, 2 quizzes
Video1 video
Reading3 readings
Project #4 Description10m
Application #4 Description10m
Application #4 Solution10m
4.7
Direction Signs

50%

started a new career after completing these courses
Briefcase

83%

got a tangible career benefit from this course
Money

33%

got a pay increase or promotion

Top Reviews

By RLMar 25th 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 JOApr 29th 2018

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

Instructors

Luay Nakhleh

Associate Professor
Computer Science; Biochemistry and Cell Biology

Scott Rixner

Professor
Computer Science

Joe Warren

Professor
Computer Science

About Rice University

Rice University is consistently ranked among the top 20 universities in the U.S. and the top 100 in the world. Rice has highly respected schools of Architecture, Business, Continuing Studies, Engineering, Humanities, Music, Natural Sciences and Social Sciences and is home to the Baker Institute for Public Policy....

About the Fundamentals of Computing Specialization

This Specialization covers much of the material that first-year Computer Science students take at Rice University. Students learn sophisticated programming skills in Python from the ground up and apply these skills in building more than 20 fun projects. The Specialization concludes with a Capstone exam that allows the students to demonstrate the range of knowledge that they have acquired in the Specialization....
Fundamentals of Computing

Frequently Asked Questions

  • Once you enroll for a Certificate, you’ll have access to all videos, quizzes, and programming assignments (if applicable). Peer review assignments can only be submitted and reviewed once your session has begun. If you choose to explore the course without purchasing, you may not be able to access certain assignments.

  • When you enroll in the course, you get access to all of the courses in the Specialization, and you earn a certificate when you complete the work. Your electronic Certificate will be added to your Accomplishments page - from there, you can print your Certificate or add it to your LinkedIn profile. If you only want to read and view the course content, you can audit the course for free.

More questions? Visit the Learner Help Center.