This preview shows pages 1–2. Sign up to view the full content.
This preview has intentionally blurred sections. Sign up to view the full version.
View Full Document
Unformatted text preview: CME 305: Discrete Mathematics and Algorithms Instructor: Professor Amin Saberi (saberi@stanford.edu) HW#3 Due 03/04/11 1. Recall the minimum vertex cover problem: given a graph G ( V,E ) find a subset S * V with minimum cardinality such that every edge in E has at least one endpoint in S * . (a) Consider the following greedy algorithm. Find the highest degree vertex, add it to the vertex cover S and remove it along with all incident edges. Repeat until all no edges remain. Prove that this algorithm has an unbounded approximation factor i.e. for any c there exists a graph G such that  S  c OPT. (b) Prove that when the graph G is bipartite we can find the minimum vertex cover in polynomial time. State your algorithm. Solution: (a) Consider a bipartite graph with partition ( A,B ). Let  A  = n and partition B into n disjoint sets { B i } n 1 with  B i  = b n/i c . Then  B  = n + b n/ 2 c + b n/ 3 c + + 1 = O ( n log n ). For each vertex a A place an edge to a vertex b B k such that each vertex in B k has degree at least k . Repeat this for k = 1 , 2 ,...,n and note that this construction is possible since each  B k  n/k . Clearly, OPT for this graph is just  A  = n . But the algorithm will (depending on how degree ties are broken) remove all vertices in B . The approximation ratio is ALG/OPT = O ( n log( n )) /n = O (log( n )) Since the ratio depends on n it is unbounded....
View
Full
Document
 Spring '09

Click to edit the document details