[英]Number of Edges in Sparse Graph?
我在第一章中阅读了Dijkstras算法。 24并与稀疏图的含义混淆。 他们说:“如果图足够稀疏-特别是E= o(V^2/lg V)
我们可以通过用二进制minheap实现min-priority队列来改进算法。”
我的问题
他们从哪里得出了稀疏图的表达式E= o(V^2/lg V)
?
如果是密集图,我们不能使用最小优先级队列。 它将对Dijkstra的时间复杂度产生什么影响?
参考-CLRS第662页,第三版。
请阅读:
将表达式E
替换为总运行时间O((V + E)lg V)
,您会看到,如果E=o(V^2/lg V)
的总和将是o(V^2)
,这是对不使用minheap的O(V^2)
运行时间的改进。
再次替代。 让我们假设一个完整的图E = V^2
。 然后,运行时间变为O((V + V^2)lg V) = O(V^2 lg V)
,比O(V^2)
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.