Date Description
2021-02-02 Loop Invariants
2021-02-04 Sequential Search
Binary Search
Selection Sort
Well-ordering Principle
Stable Matching Problem
Gale-Shapley Algorithm
2021-02-09 Gale-Shapley Implementation and Correctness
2021-02-11 Gale-Shapley Correctness
Machinist Optimality
Greedy Interval Scheduling
Greedy Stays Ahead
2021-02-16 Bus Loading and Minimizing Maximum Lateness
2021-02-18 Minimizing Maximum Lateness
Dijkstra's Algorithm
Priority Queues
Heaps
2021-02-23 Dijkstra's Correctness
2021-02-25 Minimum Spanning Trees and Kruskal's Algorithm
Prim's Algorithm
2021-03-02 Building a Heap, Disjoint Sets
2021-03-04 Light Edge Theorem
Kruskal's and Prim's Correctness
2021-03-11 Weighted Interval Scheduling
2021-03-16 Bellman-Ford, Finite Games
Nim solver
2021-03-23 Vendor Scheduling; Divide and Conquer
2021-03-25 0-1 Knapsack
Master Theorem
Karatsuba's Algorithm (Integer Multiplicaton)
Bipartite Matching (including solving with Max-Flow)
Maximum Flow
2021-03-30 Pseudopolynomial; Applications of Max Flow and Min Cut
2021-04-01 Notes are included in Maximum Flow from 2021-03-25
2021-04-06 Lower Bounds (including Comparison Graphs and Decision Trees)
Reductions
Lower Bounds and Reductions (live)
2021-04-13 NP
NP-complete
Hamiltonian Path
Vertex Cover
2021-04-15 Alternative Definition of NP; SAT and 3-SAT are NP-complete
2021-04-20 3-Coloring, including self-reducibility
2021-04-22 Cook-Levin
Self-Reducibility
co-NP
2021-04-27 Cook-Levin via CPUs and circuits; #P, PSPACE
2021-04-29 PSPACE
GEOGRAPHY is PSPACE-complete
Approximation Algorithms
Randomized Algorithms
2021-05-04 PSPACE, Approximation Algorithms, Randomized Algorithms, Undecidability