本次是關於算法課程期末NP完全問題的證明,首先
題目:
In the HITTING SET problem,we are given a family of sets{s1,s2,.......,sn}and a budget b,and we wish to find a set H of size <=b which intersects every Si,if such an H exists. In other words.show that HITTING SET is NP-complete.
大致的要求是給定一組集合{s1, s2, s3,......, sn}和預算b,求一集合H,H和所有Si相交,並且規模不超過b。證明該問題是一個NP完全問題。
證明:
首先可以先確定該問題是一個NP問題,我們可以在多項式時間內檢驗該集合H是可以滿足條件和s逐一檢查焦急並沒有超過規模b。
另外,我們發現該問題的模式類似定點覆蓋的問題,只要能找到一種把最小頂點覆蓋問題規約到碰撞集問題的方法。給定一個圖G(e, v),把每一條邊對應一個集合S,然後我們要求的H就是這麼一個頂點覆蓋S,H要和所有的Si相交,大概就對應著每一條邊都至少有一個端點在S中。H要和所有的Si相交,大概就對應著每一條邊都至少有一個端點在S中。轉化成求這|E|個集合的碰撞集,最小頂點覆蓋的頂點就是H的元素,最小頂點覆蓋數即為b。
因此,碰撞問題就是一個NP完全問題。