一、迪杰斯特拉
如果从u无法走到v,则为正无穷
(1)第一步:
从起点u0再到u0距离肯定为0
设终点为v,先不管v在哪,把到他的距离假设为无穷
(2)第二步:
假设每一个点v都属于Si,如果从起点可以直接走到v的话我们肯定可以求出路径l(v),如果不能我们就需要借助一个点拐弯来连接
比如从u0到u2,可以直接过去,也可以通过u1绕过去,比较一下哪个路径短
实现思路:
可以用邻接矩阵发判断u0与各点是否直接相连
然后我们就可以用上边地杰斯特拉算法的第二步来判断怎么走最短
总结
判断定点和其他点是不是直接相连的关系,
排序,找出与定点距离最短的点,看这个点是否能借助其他点到达目标点,如果可以,再用这条路径的距离与从定点可以直接到达目标点的路径长度进行比较
这样就可以找到最短路径
都是逐层根据你的邻接矩阵找出来的