{[ promptMessage ]}

Bookmark it

{[ promptMessage ]}

hw3soln

hw3soln - CME 305 Discrete Mathematics and Algorithms...

This preview shows pages 1–2. Sign up to view the full content.

CME 305: Discrete Mathematics and Algorithms Instructor: Professor Amin Saberi ([email protected]) 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. (b) Let ( A, B ) be the bipartite partitioning of the graph and M be the maximum matching. The following definition is useful. A path P is called an alternating path e 1 , e 2 , . . . , e k if and only if e i

This preview has intentionally blurred sections. Sign up to view the full version.

View Full Document
This is the end of the preview. Sign up to access the rest of the document.

{[ snackBarMessage ]}