它不是E *(logV)吗?参考:Dijkstra's algorithm为什么Dijkstra最糟糕的情况是E + VlogV?
-3
A
回答
1
在最坏的情况下E > V
所以复杂性是E + VlogV
它可以与E+ElogV
替换为复杂ElogV
是什么意思?
4
的Dijkstra's algorithm最坏情况下的时间复杂度依赖于它是如何实现的:
Simple Implementation:O((E * c1) + (V * V)) = O(E + V^2) ~ O(V^2)
Using Fibonacci Heap:O((E * c2) + (V * log V)) = O(E + V log V) ~ O(V log V)
+0
对于堆解决方案的分析 - 如果是E = V^2的稠密图,这是不准确的。在这种情况下,最坏的情况仍然是O(E)= O(V^2)。 –
相关问题
- 1. 快速排序最糟糕的情况是什么?
- 2. 什么是WPF最糟糕的问题?
- 3. 最糟糕的情况下面的代码复杂性
- 4. 如何在C中mergesort最糟糕的情况?
- 5. 关于二进制搜索中最糟糕的情况
- 6. Max-Heapify最糟糕的情况 - 你如何获得2n/3?
- 7. 什么是你见过的最糟糕的LINQ语法滥用?
- 8. 为什么val + = someOtherValue如此糟糕?
- 9. 为什么GLUT如此糟糕?
- 10. 为什么.classname比element.classname糟糕
- 11. 什么是最糟糕的项目失败?
- 12. 为什么重写Plone的main_template.pt是一个糟糕的主意?
- 13. 最糟糕的SQL有
- 14. 为什么这是一个糟糕的散列函数?
- 15. 为什么混淆JavaScript代码是一种糟糕的风格?
- 16. 我被困在非常糟糕的情况下。帮助请
- 17. 为什么在Cassandra中有大的分区这么糟糕?
- 18. 这种情况下最好的情况是什么?
- 19. ArrayAdapter的行为很糟糕
- 20. 什么是您在生产中发生的最糟糕的数据库事故?
- 21. 是asp.net mvc比传统的asp.net网站更糟糕的情况吗?
- 22. make/gcc:“糟糕的构建”的可能原因是什么?
- 23. 保留周期:为什么这么糟糕?
- 24. 为什么连续运行PHP脚本这么糟糕?
- 25. 为什么我的基于spf13的vim看起来很糟糕
- 26. Codeigniter中的助手类 - 他们真的很糟糕,为什么?
- 27. 什么是大堆近似最糟糕的垃圾收集时间
- 28. 为什么我的jQuery过渡很糟糕?
- 29. 为什么我的谷歌搜索排名如此糟糕?
- 30. 为什么我生成的Javadocs看起来很糟糕?
请解释为什么你认为这个算法应该是E(logV)。 –
对不起,迪杰斯特拉犯了一个错字。 – Mehrdad
常见的实现*是* O(| E | log | V |)。您需要一个支持恒定时间减少键操作的优先级队列来获得更好的渐近界。你的链接指出了这一点。 – tmyklebu