我一直从http://www.ifp.illinois.edu/~angelia/ge330fall09_dijkstra_l18.pdf
开始逐步遵循Dijkstra的算法但是,以我自己的示例为例,如果到达目标节点后立即停止,我找不到最短的路径。
我要从A-> E寻找最短路径,如下所示:
我遍历如下:
这给了我A-> F-> E的最短路径,这是不正确的(最短路径是C-> D-> E)。
困难在于我从未检查过D。
但是我读到(至少在上面的链接中),您可以在到达目的地后立即停止检查节点。这是怎么回事?
答案 0 :(得分:1)
您停得太早了。继续执行算法,直到选择E作为当前节点为止。