您的位置:首页 > 其它

NP完全问题的归约-碰撞集(HITTING SET)

2016-11-27 11:48 197 查看
原题:

在碰撞集(HITTING SET)问题中,给定一组集合{S1, S2, S3, …, Sn}和预算b,我们希望求一个与所有Si相交且规模不超过b的集合H(H与所有Si相交不为空)。

证明:

(1)hitting set问题是NP问题

只需要验证H的大小是否不超过b,以及验证H与Si的交不为空。

时间复杂度O(nHS)。

所以,hitting set问题为NP问题。

(2)所有问题可以归约到Hitting set问题

课本(《算法概论》)中已经证明,所有问题都可以归约到vertex cover问题。

所以,此处只要证明vertex cover问题可以归约到hitting set问题,则所有问题可以归约到hitting set问题。

以下证明vertex cover问题可以归约到hitting set问题。

构建一个图G到hitting set的映射:G中的每个点对应hitting set中的每个元素,每条边对应一个Si

b个点的vertex cover对应大小为b的hitting set:对于G中每一条边,至少有一个端点在b个点的vertex cover集合中,所以这个集合与Si的交集不为空,即此集合对应hitting set

大小为b的hitting set对应b个点的vertex cover:任意的Si与hitting set相交不为空,则每条边至少有一个端点被选中,即hitting set集合对应vertex cover

综上所述,vertex cover可以归约到hitting set问题。所以,hitting set问题是NP完全问题。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: