您的位置:首页 > 其它

顶点覆盖问题的NP完全证明(Proving NP-completeness of Vertex Cover)

2017-11-24 06:25 363 查看
Definition of Vertex Cover Problem:

•A vertex cover of a graph is a set of vertices such that each edge of the graph connects at least one of the vertexes in this set. e.g. (z, w) is the set of vertex cover in this graph.



Vertex Cover is an NP-Complete problem if:

1. Vertex Cover is in NP

2. Independent Set problem polynomial time reducible to Vertex Cover

Language:  VERTEX-COVER={<G, K>| where G has a vertex cover set of K size}

Is Vertex Cover in NP?

Given a graph G=(V, E) and K, prove vertex cover V’(V’⊆V).

1)prove |V’| = K.

2)For each edge (u, v) ∈ E, check is there either u∈V’or v∈V’.

Step1 costs O(C) times, Step2 costs O(|E|) times.

Thus, Step1 + Step2 cost polynomial time.

Conclusion: Vertex Cover is in NP.



What is Independent Set?

Independent set is a set of vertexes which satisfy the following condition:

•Any vertex in the set doesn’t connect each other.

Language: INDEPENDENT-SET = {<G,K>| where G has an independent set of size K}

Howto reduce the Independent Set to the Vertex Cover?

•Given a graph (G, K) which has a vertex cover V’ (|V’|=K).
•As we know, each edge (u, v) in G, atleast one vertex(u or v or both) in V’.

•Therefore, each edge at most one vertex inV-V’.
•Conclusion: If G has a K size vertexcover, G has a V-K size independent set.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: