Advanced Algorithms and Complexity

Description

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 will start with networks flows which are used in more obvious applications such as optimal matchings, finding disjoint paths and flight scheduling as well as more surprising ones like image segmentation in computer vision or finding dense clusters in the advertiser-search query graphs at search engines. We then proceed to linear programming with applications in optimizing budget allocation, portfolio optimization, finding the cheapest diet satisfying all requirements, call routing in telecommunications and many others. Next we discuss inherently hard problems for which no exact good solutions are known (and not likely to be found) and how to solve them approximately in a reasonable time. We finish with some applications to Big Data and Machine Learning which are heavy on algorithms right now.



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

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

Algorithmic Thinking (Part 2)

7th - College | Online class

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...

Free
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