這樣的算法在Skiena的算法設計書中作爲練習留給讀者,據推測它只是Prim算法的修改(In his wiki reference練習6-11)。任何人都可以設計此類算法是否有一種算法可以在只有k個不同邊緣成本的圖上找到運行時間爲O(n log k)的最小生成樹?
0
A
回答
1
具有簡單優先級隊列的Prim是O(m + n lg n),其中m是邊數,n是頂點數。如果您存儲具有相同優先級的條目(例如,使用鏈接列表),則會自動獲得O(m + n lg k)。 AFAIK,這種情況下最先進的是O(m),Fredman and Willard。
+1
只需要清楚,我相信問題中的O(n lg k)是錯誤的。事實上,我在Skiena的書 – 2011-02-17 22:58:08
7
是的,問題應該要求O(m + n log k)。很明顯,歐米茄(米)是一個下界,因爲我們甚至不檢查所有這些都找不到最低權重的邊緣。
爲了記錄,約定是n表示頂點的數量,m表示邊的數量。
享受我的書:-)
史蒂芬Skiena
相關問題
- 1. 在k <n的算法運行時log(n)vs log(k)
- 2. 正好有k個顏色邊緣的生成樹
- 3. KSum如何最小運行時間爲O(N^k-1)?
- 4. 是否有一種算法可以在多項式時間內找到k-tsp(旅行商)的最優值?
- 5. 算法的漸近分析:如何在時間O(k log k + n)中插入k個新元素到大小爲n的排序列表中
- 6. 是否有一種舒適的方法可以在PARI/GP中生成n個組合中的k個組合?
- 7. 算法K-Way合併。這個解決方案是O(n log k)嗎?
- 8. 從N個購買K個最小成本與價格不同
- 9. 在{1,2,3}中爲邊緣權重尋找最小生成樹的算法
- 10. 具有K額外節點的最小生成樹
- 11. 最小生成樹只有2等於邊緣
- 12. 用於在n位上生成大小爲k的糾錯碼的算法
- 13. 邊緣長度受限時的最小生成樹的快速算法?
- 14. 如何將n個排序列表中的平均長度K排序爲O(n * log K)時間?
- 15. 變換樹的K葉以最小的成本
- 16. 什麼是這種方法的尋找k個最大N個
- 17. 計數排序O(n + k)時間複雜度是什麼k?
- 18. O(n)的運行時間算法
- 19. 第n個K數的最佳算法
- 20. 將哈希錶轉換爲O(log(k)* k + n)中的排序數組
- 21. 查找最小生成樹是否包含線性時間的邊沿?
- 22. 最小生成樹的運行時間? (Prim方法)
- 23. 設計一個在線性時間內找到這個圖的最小生成樹的算法
- 24. 是這個算法的漸近時間複雜度O(log n)?
- 25. 生成一個整數的所有組成k部分
- 26. 算法在推力/ cudpp中找到第k個最小元素
- 27. 這個最小生成樹算法是否正確?
- 28. 什麼是生成每個k位數的算法?
- 29. 最快最小生成樹算法
- 30. Sollin的最小生成樹算法
什麼是正? n = | V | + | E |? – 2011-02-17 22:24:00
n = | V |根據我的理解 – ilcavero 2011-02-18 03:51:56