Free Course

Introduction to Graduate Algorithms

by
Georgia Institute of Technology

Offered at Georgia Tech as CS 8803 GA

About this Course

This is a graduate-level course in the design and analysis of algorithms. We study techniques for the design of algorithms (such as dynamic programming) and algorithms for fundamental problems (such as fast Fourier transform or FFT).

In addition, we study computational intractability, specifically, the theory of NP-completeness. The main topics covered in the course include: dynamic programming; divide and conquer, including FFT; randomized algorithms, including RSA cryptosystem and hashing using Bloom filters; graph algorithms; max-flow algorithms; linear programming; and NP-completeness.

Course Cost
Free
Timeline
Approx. 3 months
Skill Level
advanced
Included in Product

Rich Learning ContentRich Learning Content

Interactive QuizzesInteractive Quizzes

Taught by Industry ProsTaught by Industry Pros

Self-Paced LearningSelf-Paced Learning

Course Leads

Eric Vigoda

Eric Vigoda

Instructor

Arpan Chakraborty

Arpan Chakraborty

Instructor

What You Will Learn

Prerequisites and Requirements

Students are expected to have an undergraduate course on the design and analysis of algorithms. In particular, they should be familiar with basic graph algorithms, including DFS, BFS, and Dijkstra's shortest path algorithm, and basic dynamic programming and divide and conquer algorithms (including solving recurrences). An undergraduate course in discrete mathematics is assumed, and students should be comfortable analyzing the asymptotic running time of algorithms.

The course uses the textbook Algorithms by Sanjoy Dasgupta, Christos Papadimitriou, and Umesh Vazirani.

See the Technology Requirements for using Udacity.

Why Take This Course

The design and analysis of algorithms form an essential basis for computer science. This course is useful for those who want to pursue advanced studies in computer science, as well as those who want to work as a software engineer.

What do I get?
  • Instructor videos
  • Learn by doing exercises
  • Taught by industry professionals