poj 1860 Currency Exchange

首先讲讲我对bellman_ford 这一经典的最短路径算法的理解: 这是一个动态规划的过程,我们这里把每条边松弛一遍算是一次松弛操作,第一次松弛操作,至少能 更新和源点用一条边相连的点,但不排除更新和源点用n-1条边相连的点,第二次松弛操作,至少能更新和源点用两条边相连的点,依次类推。因为每个点的最短路径,出现在用一条边相连的情形,两条边相连的情形。。。n-1条边相连的情形,也不是每种情形都有,但总归在这n-1种情形里面,而这些情形并不是依次出现的,而是杂乱的,不过n-1次松弛,保证了每种情况都出现了,dist数组中保存了其中的最短路径。

关于优化,如果中间某次松弛,没有发生更新,说明达到了稳定态。则可以跳出循环。

如果n-1次松弛都有更新,则我们要怀疑是不是有负权回路,做第n次松弛,只要其中一个点有更新,就是存在负权回路。

现在讲讲关于此题:就是求最长路,思想和求最短路一样。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值