Chapter 4 Greedy
Algorithms
Kyle Diederich
The University of Iowa
Section 4.7: Clustering
Clustering
Clustering. Given a set of objects labeled 1, , , classify into coherent groups.
Photos, documents,
Chapter 7 Network
Flow
Kyle Diederich
The University of Iowa
Maximum Flow and Minimum Cut
Max flow and min cut.
Two very rich algorithmic problems.
Cornerstone problems in combinatorial optimization.
Chapter 4 Greedy
Algorithms
Kyle Diederich
The University of Iowa
Section 4.1: Interval Scheduling
Interval Scheduling
Interval scheduling.
Job starts at and finishes at .
Two jobs compatible if they
Chapter 5 Divide and
Conquer
Kyle Diederich
The University of Iowa
Divide-and-Conquer
Divide-and-conquer.
Break up problem into several parts.
Solve each part recursively.
Combine solutions to sub-pro
Chapter 1 Stable Matching
Kyle Diederich
The University of Iowa
Section 1.1: Stable Matching
Matching Residents to Hospitals
Goal. Given a set of preferences among hospitals and medical school student
Chapter 2 Basics of
Algorithm Analysis
Kyle Diederich
The University of Iowa
Section 2.1: Computational Tractability
Polynomial-Time
Brute force. For many non-trivial problems, there is a natural bru
Chapter 6 Dynamic
Programming
Kyle Diederich
The University of Iowa
Section 6.7: Sequence Alignment
in Linear Space
Sequence Alignment: Linear Space
Q. Can we avoid using quadratic space?
Easy. Optima
Chapter 6 Dynamic
Programming
Kyle Diederich
The University of Iowa
Algorithmic Paradigms
Greedy. Build up a solution incrementally, myopically optimizing some local
criterion.
Divide-and-conquer. Bre