算法概论课后8.9

来源:互联网 发布:js 引用后面 带时间戳 编辑:程序博客网 时间:2024/06/06 00:21

题目:

给定一组集合{S1,S2,S3,…,Sn}和预算b,求一个集合H,其中H和所有Si相交且H的规模不超过b,前提是这个集合存在。求证该问题是NP完全问题

 

证明

假设有一个图G(V,E),则把该图的每一条边对应一个集合Si,边上的两个点即该集合的元素,即每个集合有两个元素,如S1={v1,v2},这样一来,就能构造出|E|个集合。求图G的最小顶点覆盖问题,可以转化成求这|E|个集合的碰撞集,最小顶点覆盖的顶点就是H的元素,最小顶点覆盖数即为b。 儿3最小顶点覆盖问题是NP难的问题,即碰撞集为一个NP完全问题