k生成樹問題

k-生成樹(k-SPANDING TREE)問題是這樣的:
輸入:無向圖G=(V,E)。
輸出:G的生成樹,其中所有節點度數不超過k。

如果該樹存在,請證明對任意k>=2:

(a)k-生成樹問題是搜索問題。

搜索問題要求:已知起始狀態和目標狀態;可以判斷是否達到目標狀態;狀態空間離散;每個狀態可以採取的合法行動和相應後繼狀態是確定的;環境靜態;路徑耗散函數已知。
起始狀態:空樹。過程:判斷G中每個節點是否點度小於等於k,若滿足則加入生成樹。目標狀態:添加完所有節點。G不變化,判斷要求已知,生成樹時間複雜度爲O(V)。

(b)k-生成樹問題是NP-完全的。

已證k-生成樹問題爲NP問題,該問題可以由NP完全問題Rudrata環路搜索問題歸約得:
k=2時,k-生成樹存在,則該生成樹顯然是圖的一條最長鏈,只比Rudrata環路少一條邊,實際爲一條Rudrata路徑。
k>2時,k-生成樹由2-生成樹組成。
所以k-生成樹問題是NP-完全的。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章