Dijkstra算法解决最短路径问题

 时间:2024-10-12 07:42:42

1、例子直接看图吧,我们这是一个无向图,首先我们需要找到一个起点,为了方便我们直接按照字母的顺序来,从a点开始

Dijkstra算法解决最短路径问题
Dijkstra算法解决最短路径问题

2、然后我们找出其余所有的与a点相连的点,并根据路径上的权值计算出长度如图中的一样先写上

Dijkstra算法解决最短路径问题

3、然后我们来确定第二个点,根据上一步的结果我们可以发现到b的权重是最小的,所以我尺攵跋赈们确定第二个点是b点,a--b 此时b的权重为3

Dijkstra算法解决最短路径问题

4、然后我们找第三个点,现在已经是走到b点了,所以接下来的一步是从b点开始向外延伸,再找出所有与b相连的点,再根据路径上的权值和b点的权值计算出所有与b点相连的点的权值。

Dijkstra算法解决最短路径问题

5、根据上一步的结果我们可以确定d点是权值最小的点,所以第三个点应该是d点。

Dijkstra算法解决最短路径问题

6、以此类推,下面的几个点依然是用这种方式来确定,与d点相连的有c e两个点,我们计算出来长度是c(d,10)e(e,9)

Dijkstra算法解决最短路径问题

7、此时c的权重为10,而上一步c的权重为7,所以应该选择边b--c 而不是d---c

Dijkstra算法解决最短路径问题

8、最后一个点e,根据上面的点和路径上的值,来算出权值,根据结果要选择路径d--e

Dijkstra算法解决最短路径问题

9、根据上面的每一步的结果最后连起来就是这个图的最短路径。

  • 1的∞次幂型如何求极限
  • tan x 等于什么
  • 求一阶非齐次线性微分方程的通解的应用举例
  • arctan与tan转换关系
  • arctan怎么算?
  • 热门搜索
    初中手抄报 中秋节手抄报图片 五年级数学手抄报 暑假手抄报 文明城市手抄报 新年的手抄报 疫情手抄报内容 感恩的手抄报 健康饮食手抄报 国庆手抄报