DIJKSTRA的最短路径怎么求 在图中求的 我不明白具体过程

来源:百度知道 编辑:UC知道 时间:2024/05/26 14:31:53
DIJKSTRA的最短路径怎么求 在图中求的 我不明白具体过程
就是说假如说是有B是到A永久性节点 然后在B向下分析 然后确定E是永久性节点 然后是G 再以G向下进行 发现存在EHD比EGD短 G永久性节点 那应该按照G向下考虑啊 怎么会又在考虑H的??????H应该不再考虑啊???DIJKSTRA的最短路径怎么求 在图中求的 我不明

你的理解有错误,你指的永久性节点应该就是确定了最短路径的节点,把这些节点作为一个组来考虑,所有的节点都要记录原点到该节点的最短距离。每次选择距离最短的节点加入这个组,然后要对没加入这个组的其他节点进行一次松弛操作,也就是更新起点到他的最短距离。
不知道你的问题里H是什么节点,不过你说的“发现存在EHD比EGD短”,应该就是一次松弛操作,在你说的里面,A B E G是已经确定了最短距离的点,此时刚加入的点是G,假设另外还有点R K,那么比较“原来从起点到R的距离”和“起点到G的距离+G到R的距离”哪个更短,将更短的值赋给起点到R的距离值,这样就是一次松弛操作。对K也是同样的操作。
自己画个图举个例子就清楚了。