2
A
回答
1
要回答這個問題的一部分,修改克魯斯卡爾算法的草圖在問題中並不能解決問題。考慮圖G=(V,E,w)
其中
V = {1,2,3},
E = {{1,2}, {2,3}, {3,1}},
w({1,2}) = 1,
w({1,3}) = 1,
w({2,3}) = 2
和1
是在最小生成樹程度要被最小化的節點。然後,邊緣設置
S1={{1,2},{1,3}}
構成重量2
的最小生成樹。然而,Kruskal算法的修改版本將不失一般性地選擇邊緣{1,2}
,這將導致{1,3}
被禁止,使得{2,3}
被選擇。總之,在所選擇的邊緣設置
S2={{1,2},{2,3}}
節點1
具有更小的程度比在S2
,但S2
總重量爲3
,這意味着它不構成最小生成樹。
此外,注意的是,節點v
這是要被最小化的程度必須是至少3
具有最小生成樹v
多於一個鄰域的可能性。
在詳盡的搜索中,請選擇任何可能的v
附近區域。由於v
最多隻有n
鄰居,所以最多有2^n
這樣的鄰居。使用Prim算法,將其中的每一個擴展到生成樹,這對於包含所選擇的v
的鄰域來說成本最小;在所有這些成本最小的解決方案中,選擇其中v
的程度被最小化的一個。但是,該方法不會產生多項式時間算法。
相關問題
- 1. 找到一個最小化節點深度總和的生成樹
- 2. AVL樹的最大和最小節點
- 3. R:深度最小生成樹
- 4. Networkx最小生成樹 - 精度問題?
- 5. 通用最小生成樹
- 6. 動態最小生成樹
- 7. 具有K額外節點的最小生成樹
- 8. 最快最小生成樹算法
- 9. 查找具有最大最小度的生成樹
- 10. n元樹中的最小節點
- 11. 找到最小化樹深度的根
- 12. Sollin的最小生成樹算法
- 13. 擴展JTree的節點最小化GridBagLayout
- 14. 什麼是最小葉生成樹?
- 15. Java最小生成樹問題
- 16. 最小直徑生成樹算法
- 17. 關於切入最小生成樹
- 18. 關於最小生成樹圖
- 19. 多重最小生成樹圖
- 20. 約束度+有界直徑最小生成樹的算法?
- 21. Python:如何可視化網絡的最小生成樹?
- 22. 二叉搜索樹基於節點數量的最大和最小高度
- 23. 開始位置和一組所需節點之間的最小生成樹
- 24. 如何在C++中實現具有2000多個節點的最小生成樹?
- 25. Java:使用JGraphT生成最小生成樹?
- 26. 最小寬度,最大寬度的CSS使用最小寬度
- 27. 給定必須包含的邊的最小生成樹數
- 28. 如何最小化最短路徑樹的總成本
- 29. R樹節點應該有多少個孩子(最小,最大)?
- 30. 證明節點的AVL樹的最小數目的
我覺得G的定義有一些錯誤?您沒有定義節點4,但包含邊緣{3,4},並未指定其重量。 – user1767774
感謝您的提示;我編輯了答案。 – Codor