Floyd

Floyd算法时求取任意两点间最短路径的一种算法,它可以处理有向图或边权重为负值的情况,复杂度相交比较高。
其处理的对象是图的边,其算法步骤如下:
1、任意两点间的距离用其直接相连的变得权重表示,无直接相连的两点间的距离为无穷大
2、选取一条边,遍历图中的所有节点,判断是否经由该节点能缩短间的距离,并更新最短距离和前驱节点
3、重复第二个步骤直至所有的边都完成该操作
通常情况下,用邻接矩阵表示图中任意两点间的距离,再用一个临界矩阵存储两节点间最短路径需要经过

你可能感兴趣的:(Floyd)