我有一張圖,我想穿過圖(通過所有頂點不是必需的),總是以較大的重量採取路徑。我不能兩次經過同一個頂點,如果沒有更多的動作,我會停下來。什麼是複雜性?我假設它是「n」(其中n是頂點數),但我不確定。通過走最大重量的路徑走過圖的複雜性
0
A
回答
3
如果你不能通過兩次相同的頂點,你的邊界遍歷的上界是n。 很容易想到這樣的例子,它將是一個緊的界限(例如連接的單個頂點鏈)。
但是,請記住,複雜性是給定的算法,而不是一個普通的任務,你沒有描述你的算法或你的圖是如何組織的,所以這個問題沒有任何意義。如果例如圖是一個團,也許爲每個遍歷選擇最高權重邊本身需要n個計算步驟(如果邊保留在保存在每個頂點的未排序列表中),使得樸素算法O( n^2)在這種情況下。其他表示可能具有不同的複雜性,但需要不同的算法。
編輯
如果你問關於尋找具有最大總重量(這可能需要一些遍歷挑不具有最高權重的邊緣),比路徑問題是NP難。如果它有一個多項式算法,那麼你可以取一個不加權的圖並找出最長的路徑(一個已知的NP難題,就像jimifiki指出的那樣),然後用該算法求解。
1
這個問題被稱爲最長路徑問題,是NP完全問題。
相關問題
- 1. 如何通過youtube走路?
- 2. 走過
- 3. 走遞歸通過在Python
- 4. 通過PHP數組行走
- 5. 行走過濾
- 6. 遞歸地走數組並打印走的路徑
- 7. 走過Java中的複雜對象圖,並得到索引(類似於XPath的)
- 8. 聯合走過的距離
- 9. 的Java:走過樹與樹
- 10. ZF走錯路線重寫
- 11. 通過加權圖的最短路徑
- 12. 以const走投無路:性病::地圖::找到()const的重載
- 13. 走路表
- 14. 走走405不允許的方法「通過我的ASP.NET Web窗體
- 15. 通過img滑塊向後走jQuery
- 16. 複雜子句中行走JOIN 1.6
- 17. 走過AST ANTLR V2.X
- 18. 走過例for循環
- 19. linux內核路徑走。 lookup_slow交代
- 20. 屬性走空,
- 21. 走走的XLink:HREF「在HTML DOM
- 22. 走走android.os.NetworkOnMainThreadException「同時的AsyncTask
- 23. 動畫狗走路
- 24. 有效地通過數據幀大熊貓索引行走
- 25. 通過列表從最終走向分裂()
- 26. TinyMCE的插入圖像 - 走錯了路
- 27. wordpress中的圖片,要走哪條路?
- 28. 301複雜的重定向通過.htaccess
- 29. 複雜的路徑路線
- 30. Neo4j的最短路徑通過指數
不,最長的路徑不關心權重,你只需選擇右邊緣來防止自己到達使用的頂點 - 這是很難的事情。挑最重的邊緣很簡單。 – Leeor
@Leeor,請。最長路徑是最大權重路徑實例的子集。因此,最大重量路徑至少是同樣複雜的。 如果最長路徑是NP完整的,則最大權重路徑也是如此。 – jimifiki
嗯。他的問題並不十分清楚 - 我明白他總是在追求最大重量的優勢,而不是最大化整體重量。在那種情況下,你是對的,我會編輯。 – Leeor