鸿 网 互 联 www.68idc.cn

当前位置 : 服务器租用 > 操作系统维护 > 其它 > >

单源最短路径问题-具有负边值的图

来源:互联网 作者:佚名 时间:2017-09-06 09:23
借助队列处理 void WeightedNegative(Table T) { Queue Q; Vertext V, W; Q = CreateQueue(NumVertex); MakeEmpty(Q); Enqueue(S, Q); while (! IsEmpty(Q)) { V = Dequeue(Q); for each W adjacent to V if (T[V].Dist + Cvw T[W].Dist) { T[W].Dist = T[V]

借助队列处理

void WeightedNegative(Table T) {
    Queue Q;
    Vertext V, W;
    Q = CreateQueue(NumVertex);
    MakeEmpty(Q);
    Enqueue(S, Q);

    while (!IsEmpty(Q)) {
        V = Dequeue(Q);for each W adjacent to V
            if (T[V].Dist + Cvw < T[W].Dist) {
                T[W].Dist = T[V].Dist + Cvw;
                T[W].Path = V;
                if (W is not in Q)
                    Enqueue(W, Q);
            }
    }

    DisPoseQueue(Q);
}

 

网友评论
<