最短路。

  最短路的话,就是求一个点到其他点的最短的距离。。。

  然后算法的话,有 Dijkstra,Bellman-Ford,SPFA等等,还有Floyd。

  然后常用的话就是Dijkstra(优先队列优化)以及SPFA了。。。

  可以看下面这篇文章:

  http://blog.csdn.net/zhongyanghu27/article/details/8221276

  然后还有一个问题就是差分约束问题,也就是有一系列的 Xi-Xj<c 然后求 Xa-Xb 的最大值。。。

  这个也可以转化为最短路,也就是 建边 j->i 边权为 c。

  然后 b->a的最短路就是 Xa-Xb的最大值。

  然后当存在负环的时候约束不成立。

  当b->a的最短路为INF是表示任意大的值都成立。。。

  这里还有一个问题就是最短路算法的思想:

  解决问题的时候像 Dijkstra 算法就是每次找到一个不可能再更改的值,然后从他扩展开来。。。

  还有一种就是像 Bellman-Ford 算法一样,不断的放缩来更新,一直到一定的次数之后。。。

  这些思想在解决其他问题也可用到。。。

原文地址:https://www.cnblogs.com/whywhy/p/4337853.html