负权指的是一张图中包含一条权重小于0的边。负环指的是一张图中存在权重只和为负数的环。如果一张图中存在负环,那么这张图是没有最短路径的。
那么,假设图中不存在负环,但是有负权,那么最短路径如何求解呢?答案就是使用Bellman-Ford算法,该算法的性能一般。
基本思想
Bellman-Ford算法的基本思想就是对图中所有的边都进行V次“放松”操作。...
分类:
其他好文 时间:
2014-06-27 08:45:57
阅读次数:
195
1 /* 2 Dijkstra算法用优先队列来实现,实现了每一条边最多遍历一次。
要知道,我们从队列头部找到的都是到 3 已经"建好树"的最短距离以及该节点编号, 并由该节点去更新 树根 到其他点(被更新的节点可以在队列中 4
,也可以是非队列中的节点)的距离 。 5 6 ////队列中的节点都.....
分类:
其他好文 时间:
2014-06-12 19:37:39
阅读次数:
303
题意:求给定的一组不等式是否有解,不等式要么是:SUM(Xi) (a k (1)
要么是SUM(Xi) (a k,也就是T(a-1)-T(a+b) =
K.不存在这个序列的情况即为出现负环,所以这题建图后只需判断有无负环即可。这里用Bellman-Ford算法判负环注意:(1)a-1有可能为0,a....
分类:
其他好文 时间:
2014-06-12 08:03:35
阅读次数:
213
经典算法单源最短路:1.Bellman_ford(可判负环,可有负边)d[i]表示起点S到i的最短路,那么d[i]=min{d[j]+w[j][i]}且存在j->i的边代价为w[j][i]经过证明如果不存在负圈最多通过V-1次松弛就可以完成复杂度O(V*E)(V为结点数,E为边数)
1 #inclu...
分类:
其他好文 时间:
2014-06-09 15:09:24
阅读次数:
256
链接:http://poj.org/problem?id=3259
Description
While exploring his many farms, Farmer John has discovered a number of amazing wormholes. A wormhole is very peculiar because it is a one-way path t...
分类:
其他好文 时间:
2014-06-05 05:26:33
阅读次数:
240
算法简介前面介绍过图的单源最短路径算法Dijkstra算法,然而Dijkstra算法无法判断含负权边的图的最短路。如果遇到负权,在没有负权回路存在时(负权回路的含义是,回路的权值和为负。)即便有负权的边,也可以采用Bellman-Ford算法正确求出最短路径。
Bellman-Ford算法能在更普遍...
分类:
其他好文 时间:
2014-06-02 21:40:00
阅读次数:
454
问题描述
给定一个n个顶点,m条边的有向图(其中某些边权可能为负,但保证没有负环)。请你计算从1号点到其他点的最短路(顶点从1到n编号)。 输入格式 第一行两个整数n,
m。 接下来的m行,每行有三个整数u, v, l,表示u到v有一条长度为l的边。 输出格式 共n-1行,第i行表示1号点到i+1号...
分类:
其他好文 时间:
2014-05-28 14:51:35
阅读次数:
231