CSE 421 Algorithms
Richard Anderson Lecture 29 NP-Completeness and course wrap-up
Today
NP-completeness
Reductions Problem Thresholds Number problems What is NP? What we don't know about NP-completeness
Course summary Evaluations
NP-Completeness Reduct
Today
NP-completeness
CSE 421 Algorithms
Richard Anderson Lecture 29 NP-Completeness and course wrap-up
Reductions Problem Thresholds Number problems What is NP? What we don't know about NP-completeness
Course summary Evaluations
NP-Completeness Reduct
CSE 421 Algorithms
Richard Anderson Lecture 27 NP Completeness
Announcements
Final Exam
Monday, December 11, 2:30-4:20 pm
Closed book, closed notes
Practice final and answer key available
HW 9, due Friday, 1:30 pm This week's topic
NP-completeness R
Announcements
Final Exam
CSE 421 Algorithms
Richard Anderson Lecture 27 NP Completeness
Monday, December 11, 2:30-4:20 pm
Closed book, closed notes
Practice final and answer key available
HW 9, due Friday, 1:30 pm This week's topic
NP-completeness R
CSE 421 Algorithms
Richard Anderson Lecture 26 Network Flow Applications
Today's topics
More network flow reductions
Airplane scheduling Image segmentation Baseball elimination
Airplane Scheduling
Given an airline schedule, and starting locations for t
Today's topics
More network flow reductions
CSE 421 Algorithms
Richard Anderson Lecture 26 Network Flow Applications
Airplane scheduling Image segmentation Baseball elimination
Airplane Scheduling
Given an airline schedule, and starting locations for t
CSE 421 Algorithms
Richard Anderson Lecture 25 Open Pit Mining
Today's topics
Open Pit Mining Problem Task Selection Problem Reduction to Min Cut problem
S, T is a cut if S, T is a partition of the vertices with s in S and t in T The capacity of an S, T
Today's topics CSE 421 Algorithms
Richard Anderson Lecture 25 Open Pit Mining Open Pit Mining Problem Task Selection Problem Reduction to Min Cut problem
S, T is a cut if S, T is a partition of the vertices with s in S and t in T The capacity of an S, T c
CSE 421 Algorithms
Richard Anderson Lecture 24 Network Flow Applications
Today's topics
Problem Reductions
Undirected Flow to Flow Bipartite Matching Disjoint Path Problem
Circulations Lowerbound constraints on flows Survey design
Problem Reduction
Re
Today's topics
Problem Reductions
CSE 421 Algorithms
Richard Anderson Lecture 24 Network Flow Applications
Undirected Flow to Flow Bipartite Matching Disjoint Path Problem
Circulations Lowerbound constraints on flows Survey design
Problem Reduction
Re
CSE 421 Algorithms
Richard Anderson Lecture 21 Shortest Paths
Shortest Path Problem
Dijkstra's Single Source Shortest Paths Algorithm
O(mlog n) time, positive cost edges
General case handling negative edges If there exists a negative cost cycle, the sh
Shortest Path Problem CSE 421 Algorithms
Richard Anderson Lecture 21 Shortest Paths Dijkstra's Single Source Shortest Paths Algorithm
O(mlog n) time, positive cost edges
General case handling negative edges If there exists a negative cost cycle, the sho
CSE 421 Algorithms
Richard Anderson Lecture 20 Memory Efficient Longest Common Subsequence
Longest Common Subsequence
C=c1.cg is a subsequence of A=a1.am if C can be obtained by removing elements from A (but retaining order) LCS(A, B): A maximum length s
Longest Common Subsequence CSE 421 Algorithms
Richard Anderson Lecture 20 Memory Efficient Longest Common Subsequence
C=c1.cg is a subsequence of A=a1.am if C can be obtained by removing elements from A (but retaining order) LCS(A, B): A maximum length s
CSE 421 Algorithms
Richard Anderson Lecture 19 Longest Common Subsequence
Longest Common Subsequence
C=c1.cg is a subsequence of A=a1.am if C can be obtained by removing elements from A (but retaining order) LCS(A, B): A maximum length sequence that is a
Longest Common Subsequence CSE 421 Algorithms
Richard Anderson Lecture 19 Longest Common Subsequence C=c1.cg is a subsequence of A=a1.am if C can be obtained by removing elements from A (but retaining order) LCS(A, B): A maximum length sequence that is a
CSE 421 Algorithms
Richard Anderson Lecture 18 Dynamic Programming
Dynamic Programming
The most important algorithmic technique covered in CSE 421 Key ideas
Express solution in terms of a polynomial number of sub problems Order sub problems to avoid rec
Dynamic Programming CSE 421 Algorithms
Richard Anderson Lecture 18 Dynamic Programming The most important algorithmic technique covered in CSE 421 Key ideas
Express solution in terms of a polynomial number of sub problems Order sub problems to avoid reco
CSE 421 Algorithms
Richard Anderson Lecture 17 Dynamic Programming
Optimal linear interpolation
Error = (yi axi b)2
Determine set of K lines to minimize error
Optk[ j ] : Minimum error approximating p1.pj with k segments
Express Optk[ j ] in terms of Optk
Optimal linear interpolation CSE 421 Algorithms
Richard Anderson Lecture 17 Dynamic Programming
Error = (yi axi b)2
Determine set of K lines to minimize error
Optk[ j ] : Minimum error approximating p1.pj with k segments
Express Optk[ j ] in terms of Optk
CSE 421 Algorithms
Richard Anderson Lecture 16a Dynamic Programming
Dynamic Programming
Weighted Interval Scheduling Given a collection of intervals I1,.,In with weights w1,.,wn, choose a maximum weight set of non-overlapping intervals
4 6 3 5 7 6 Sorted
Dynamic Programming CSE 421 Algorithms
Richard Anderson Lecture 16a Dynamic Programming Weighted Interval Scheduling Given a collection of intervals I1,.,In with weights w1,.,wn, choose a maximum weight set of non-overlapping intervals
4 6 3 5 7 6
Recursi
CSE 421 Algorithms
Richard Anderson Lecture 16 Dynamic Programming
Dynamic Programming
Weighted Interval Scheduling Given a collection of intervals I1,.,In with weights w1,.,wn, choose a maximum weight set of non-overlapping intervals
4 6 3 5 7 6 Sorted
Dynamic Programming CSE 421 Algorithms
Richard Anderson Lecture 16 Dynamic Programming Weighted Interval Scheduling Given a collection of intervals I1,.,In with weights w1,.,wn, choose a maximum weight set of non-overlapping intervals
4 6 3 5 7 6
Optimali