Algorithmic Thinking (Part 2)

Description

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.



More Ways to Learn Algorithms

Algorithms

High School - College | Online class

We’ve partnered with Dartmouth college professors Tom Cormen and Devin Balkcom to teach introductory computer science algorithms, including searching, sorting, recursion, and graph theory. Learn...

Free

Algorithmic Toolbox

College | Online class

Algorithmic Toolbox is course 1 of 6 in the Data Structures and Algorithms Specialization. The Specialization covers algorithmic techniques for solving problems arising in computer science...

Free
Offers paid add-ons

Approximation Algorithms Part II

College | Online class

Approximation algorithms, Part 2 This is the continuation of Approximation algorithms, Part 1. Here you will learn linear programming duality applied to the design of some approximation algorithms,...

Free

Introduction to Recommender Systems

College | Online class

Recommender systems have changed the way people find products, information, and even other people. They study patterns of behavior to know what someone will prefer from among a collection of things...

Free

Approximation Algorithms Part I

College | Online class

Approximation algorithms, Part I How efficiently can you pack objects into a minimum number of boxes? How well can you cluster nodes so as to cheaply separate a network into components around a few...

Free

Master Algorithmic Programming Techniques

College | Online class

The Specialization covers algorithmic techniques for solving problems arising in computer science applications. It is a mix of theory and practice: you will not only design algorithms and estimate...

$79

Advanced Algorithms and Complexity

College | Online class

You’ve learned the basic algorithms now and are ready to step into the area of more complex problems and algorithms to solve them. Advanced algorithms build upon basic ones and use new ideas. We...

Free

Algorithms on Strings

College | Online class

World and internet is full of textual information. We search for information using textual queries, we read websites, books, e-mails. All those are strings from the point of view of computer...

Free

Algorithm Master: Python

7th - College | Online class

This course guides students through learning Python, with an emphasis on algorithms and data structures. This track covers recursion, searching algorithms, sorting algorithms, big-O notation, and...

$250 monthly
Offers paid add-ons

CS303: Algorithms

College | Online class

This course focuses on the fundamentals of computer algorithms, emphasizing methods useful in practice. We look into the algorithm analysis as a way to understand behavior of computer programs as a...

Free

See all resources for Algorithms