MIT 6.006 - Introduction to Algorithms

Taught by Prof. Erik Demaine, Dr. Jason Ku, and Prof. Justin Solomon

Course Description

This is an introductory course covering elementary data structures (dynamic arrays, heaps, balanced binary search trees, hash tables) and algorithmic approaches to solve classical problems (sorting, graph searching, dynamic programming). Introduction to mathematical modeling of computational problems, as well as common algorithms, algorithmic paradigms, and data structures used to solve these problems. Emphasizes the relationship between algorithms and programming, and introduces basic performance measures and analysis techniques for these problems.

Course Website Lecture Videos (YouTube)

Lectures

  1. Algorithms and Computation
  2. Data Structures and Dynamic Arrays
  3. Problem Session 1
  4. Sets and Sorting
  5. Hashing