摘要: Bellman-Ford算法流程分为三个阶段:(1) 初始化:将除源点外的所有顶点的最短距离估计值 d[v] ←+∞, d[s] ←0;(2) 迭代求解:反复对边集E中的每条边进行松弛操作,使得顶点集V中的每个顶点v的最短距离估计值逐步逼近其最短距离;(运行|v|-1次)(3) 检验负权回路:判断边集E中的每一条边的两个端点是否收敛。如果存在未收敛的顶点,则算法返回... 阅读全文
posted @ 2010-05-24 22:45 北海小龙 阅读(332) 评论(0) 推荐(0) 编辑
摘要: //题目类型:典型的差分约束(Bellman-Ford算法实现) 差分约束的讲解见《算法导论》 假设X[i]表示横坐标,对于 a b d 需要满足:1)如果是喜欢关系,X[b] - X[a] <= d,于是加一条 a 到 b 权为 d的边;2) 如果是讨厌关系,X[b] - X[a] >= d,即X[a]-X[b]<=-d,于是加一条 b 到 a 权为 -d的边;有负环输出 -1... 阅读全文
posted @ 2010-05-24 22:36 北海小龙 阅读(405) 评论(0) 推荐(0) 编辑