《演算法概論》習題8 12題解

2021-07-26 00:09:30 字數 361 閱讀 6807

8.12 k-生成樹問題是這樣的:

輸入:無向圖g=(v,e)

輸出:g的乙個生成樹,其中所有節點度數都不超過k——如果該樹存在。

請證明對任意k>=2:

(a)k-生成樹問題是乙個搜尋問題。

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

(a)對於例項i,其任意乙個解s,遍歷s的每個結點,檢查其度數是否不超過k,這是多項式時間內可做到的;此外檢測s是否為一棵樹也能在多項式時間內完成。所以k-生成樹問題是乙個搜尋問題。

(b)k-生成樹問題可以由rudrata路徑問題規約,應該當k=2時,生成樹就是一條經過所有頂點的路徑,所以rudrata路徑問題可以規約到乙個2-生成樹的問題。所以k-生成樹問題是np-完全的

演算法概論習題解答8 22

8.22 問題描述 在任務排程,常常會用到圖。其中節點應用於任務,任務i到j的有向邊表示i是j的先期條件。這樣的圖描述了排程問題中的任務先後關係 約束 顯然,乙個排程是可行的當且僅當該圖無環 如果排程不可行,我們需要使其無環所需的最小約束數量。給定乙個有向圖g v,e 子集e e稱為乙個反饋弧集,反...

《演算法概論》習題8 19

問題描述 所謂風箏圖是這樣的,其頂點數為偶數,如2n,且其中的n個頂點構成了乙個團,剩餘的n個頂點則由一條稱為尾巴的路徑連線,尾巴的某個端點與團的乙個頂點相連。給定乙個圖和目標g,風箏圖問題要求圖的乙個包含2g個頂點的風箏子圖。請證明該問題是np 完全。解答 可以將團問題歸約到 kite 問題。若要...

《演算法概論》習題8 22

題目 在任務排程中,常常會用到圖。其中節點對應任務,任務i到任務j的有向邊表示i是j的先期條件。這樣的圖描述了排程問題中的任務先後關係 約束 顯然,乙個排程是可行的當且僅當該圖無環 如果排程不可行,我們需要求使其無環所需的最小約束數量。給定乙個有向圖g v,e 子集e e稱為反饋弧集合是指 將其移除...