题目:In an undirected graph G = (V, E), we say D ⊆ V is a dominating set if every v ∈ V is either in D or adjacent to at least one member of D. In the DOMINATING SET problem, the input is a graph and a budget b, and the aim is to find a dominating set in the graph of size at most b, if one exists. Prove that this problem is NP-complete.
解答:
可以将顶点覆盖问题归约到支配集问题。若要在图 G ( V , E ) 中求得不大于 b 的一个顶点覆盖,可以先对图 G 做一个预处理:对每条边 ( u , v ) ∈ E ,添加一个辅助顶点 w ,及两条边 ( u , w ) 和 ( v , w ) ,如下图所示:
对每条边都这样处理后得到一个新图 G ’ 。容易看出,若原图 G 中存在不大于 b 的顶点覆盖,这个顶点覆盖也是新图 G ’ 的一个支配集。反过来,若新图G ’ 中存在一个不大于 b 的支配集,那么对这个支配集进行一些处理后也能得到一个图 G 的不大于 b 的顶点覆盖。处理过程如下:设该支配集为 D ,对于每条边 ( u , v ) 及相应的辅助顶点 w ,若 w ∉ D ,则不用做任何处理,若 w ∈ D 且 u , v ∉ D ,那么可以在 D 中将 w 替换成 u 或 v ,若 w ∈ D 同时 u ∈ D ∨ v ∈ D ,则直接将 w 从 D 中删掉即可。