Episodes
This recitation discusses the first problem from Problem Set 3, covering sweep-line algorithms and range queries.
Published 08/16/13
This recitation starts with a review of comparison sorting methods, and then discusses counting sort and radix sort.
Published 08/16/13
Sorting is introduced, and motivated by problems that become easier once the inputs are sorted. The lecture covers insertion sort, then discusses merge sort and analyzes its running time using a recursion tree.
Published 08/16/13
This lecture describes an algorithm as a computational procedure to solve a problem, covers the random access machine and pointer models of computation, and introduces the document distance problem.
Published 08/16/13
This lecture begins with a review of graphs and applications of graph search, discusses graph representations such as adjacency lists, and covers breadth-first search.
Published 02/04/13
This recitation covers the wood-cutting problem (dynamic programming) and Bloom filters (hashing, probability).
Published 12/10/12
This recitation discusses the knapsack problem and polynomial time vs. pseudo-polynomial time.
Published 12/10/12
This recitation reviews numerics and graphs in preparation for Quiz 2.
Published 12/10/12
This recitation looks at player positions in the Dance Dance Revolution game, along the lines of the guitar fingering example shown in lecture.
Published 12/10/12
This recitation uses dynamic programming to find subsequences in the card game Crazy Eights, and to find the shortest path in a graph.
Published 12/10/12
This recitation reviews the computational complexity concepts presented in lecture.
Published 12/10/12
This recitation revisits the perfect-information blackjack problem that was covered in lecture.
Published 12/10/12
This recitation covers breadth-first search for shortest paths.
Published 12/10/12
This recitation discusses the Rubik's cube problem from Problem Set 6, and then uses a graph model to find an optimal build order for a simplified version of the StarCraft game.
Published 12/10/12
This recitation briefly discusses Karatsuba multiplication, then covers Newton's method.
Published 12/10/12
This recitation starts with a discussion of Problem Set 5, and then covers graph representations and breadth-first search.
Published 12/10/12
This recitation covers depth-first search and DFS edge classification.
Published 12/10/12
This recitation mostly covers rolling hashes, with a short discussion of amortized analysis at the end.
Published 12/10/12
This recitation discusses principles of algorithm design, using example problems from previous final exams.
Published 12/10/12
This recitation starts with a short discussion of hashing, and then discusses problem set code for most of the hour. Amortized analysis is also discussed briefly.
Published 12/10/12
This recitation covers several practice problems for Quiz 1, taken from previous semesters of 6.006.
Published 12/10/12
This recitation starts with a review of recursion trees and recurrences, and then discusses binary search trees.
Published 12/10/12
This recitation covers insertion, deletion, and rebalancing of AVL trees.
Published 12/10/12
This recitation continues to look at versions of the document distance code, and briefly discusses insertion and merge sort.
Published 12/10/12
This recitation covers the Python cost model and looks at the code for document distance, including main and most functions except count_frequency.
Published 12/10/12