6.006 Introduction to Algorithms
6.006 Introduction to Algorithms (Spring 2020, MIT OCW). Instructors: Prof. Erik Demaine, Dr. Jason Ku, and Prof. Justin Solomon. This course is an introduction to mathematical modeling of computational problems, as well as common algorithms, algorithmic paradigms, and data structures used to solve these problems. It emphasizes the relationship between algorithms and programming and introduces basic performance measures and analysis techniques for these problems.
(from ocw.mit.edu)
Instructor: Dr. Jason Ku. This session focuses on preparing for the quiz. High-level concepts are discussed and example problems are worked. Topics include the Master Theorem, data structures, and sorting.
Go to the Course Home or watch other lectures:
Lecture 01 - Algorithms and Computation |
Lecture 02 - Data Structures and Dynamic Arrays |
Problem Session 01 - Asymptotic Behavior of Functions and Double-ended Sequence Operations |
Lecture 03 - Sets and Sorting |
Lecture 04 - Hashing |
Problem Session 02 - Solving Recurrences and the Master Theorem |
Lecture 05 - Linear Sorting |
Problem Session 03 - Drawing Pictures of Hash Tables and Reductions from Set to Sequence |
Lecture 06 - Binary Trees, Part 1 |
Lecture 07 - Binary Trees, Part 2 |
Problem Session 04 - Sequence Rotations, Drawing Sequence Trees, Binary Search |
Lecture 08 - Binary Heaps |
Lecture 09 - Breadth-First Search |
Quiz 01 - Review |
Lecture 10 - Depth-First Search |
Lecture 11 - Weighted Shortest Paths |
Problem Session 05 - Graph Radius, Graph Schematics, Breadth and Depth-First Searches |
Lecture 12 - Bellman-Ford |
Problem Session 06 - Topological Ordering, DAG Relaxation, Bellman-Ford, and Python Code |
Lecture 13 - Dijkstra |
Problem Session 07 - Dijkstra Algorithm, Weighted Graph Radius, Weighted Ratios |
Lecture 14 - APSP and Johnson |
Quiz 02 - Review |
Lecture 15 - Dynamic Programming, Part 1: SRTBOT, Fib, DAGs, Bowling |
Lecture 16 - Dynamic Programming, Part 2: LCS, LIS, Coins |
Problem Session 08 - Solving Recursively, O(n)-time Dynamic Programming, Topological Order |
Lecture 17 - Dynamic Programming, Part 3: APSP, Parens, Piano |
Lecture 18 - Dynamic Programming, Part 4: Rods, Subset Sum, Pseudo Polynomial |
Lecture 19 - Complexity |
Quiz 03 - Review |
Lecture 20 - Course Review |
Lecture 21 - Algorithms - Next Steps |