您将获得一个加权有向图,其中1≤ N ≤10 ^ 5个节点数(从1到N),起始节点 S 和1≤ M ≤10 ^ 5条边缘,可以是三种类型(均带有权重):
注意:所有权重均为非负数
任务是找到从 S 到其余节点的最小成本(或路径中权重的总和),或者确定是否不会发生这种情况。
必须比复杂度O(N * M)更快,接近O(M * log ^ 2(N))的复杂度会很大。
我最好的办法是使一个最小的段与懒惰的代表一个优先级队列答案,这是成本较低,并且已经更新了要传播的节点,但这仅适用于类型1和2的边缘。
我无法处理第三种类型的边缘。有解决办法吗?