Wednesday, April 11, 2018

[LeetCode]Network Delay Time


本质上就是单源最短路径(SSSP)的问题,我们跑一遍Dijkstra然后找到k最短路径最大的即可。假设有V个节点,E条边,注意c++的heap是不支持increase/decrease priority的,所以对于一个节点,我们允许多个对应的距离在优先队列上,我们保证不从队列长重复展开即可,所以队列的size不是V而是E。所以时间复杂度为O(E * log E),代码如下:



No comments:

Post a Comment