Lecture Topics (tentative)

Mon, Aug 24— Course Intro: Tiling Problems

Reading: KT § 1.2

Wed, Aug 26— Stable Matching I: Gale-Shapley Algorithm

Reading: KT § 1.1

Fri, Aug 28— Stable Matching II: Analyzing Gale-Shapley

Reading: KT § 1.1, 2.3

Mon, Aug 31— Greedy Algorithms I: Interval Scheduling

Reading: KT § 4.1

Wed, Sep 2— Greedy Algorithms II: Optimal Prefix Codes

Reading: KT § 4.8

Fri, Sep 4— Greedy Algorithms III: Huffman's Algorithm

Reading: KT § 4.8

Wed, Sep 9— Greedy Algorithms IV: Minimum Spanning Tree

Reading: KT § 4.5

Fri, Sep 11— Dynamic Programming I: Weighted Interval Scheduling

Reading: KT § 6.1

Mon, Sep 14— Dynamic Programming II: Analysis of Weighted Interval Scheduling

Reading: KT § 6.1

Wed, Sep 16— Dynamic Programming III: Edit Distance

Reading: KT § 6.6

Fri, Sep 18— Dynamic Programming IV: Shortest Paths and the Bellman-Ford Algorithm

Reading: KT § 6.8

Mon, Sep 21— Dynamic Programming V: RNA Secondary Structure Prediction

Reading: KT § 6.5

Wed, Sep 23— Divide and Conquer I: Recurrence Relations

Reading: KT § 5.1-5.2

Fri, Sep 25— Divide and Conquer II: Integer Multiplication

Reading: KT § 5.5

Mon, Sep 28— Divide and Conquer III: Fast Fourier Transform

Reading: KT § 5.6

Wed, Sep 30— Review for Prelim 1

Fri, Oct 2— Divide and Conquer IV: Closest Pair of Points in the Plane

Reading: KT § 5.4

Mon, Oct 5— Divide and Conquer V: Randomized Median Finding

Reading: KT § 13.5

Wed, Oct 7— Network Flow I: Problem Definitions

Reading: KT § 7.1

Fri, Oct 9— Network Flow II: Ford-Fulkerson Algorithm

Reading: KT § 7.1

Wed, Oct 14— Network Flow III: Max-Flow Min-Cut

Reading: KT § 7.2