迪杰斯特拉算法讲课教案.pptVIP

  • 77
  • 0
  • 约小于1千字
  • 约 15页
  • 2020-07-06 发布于浙江
  • 举报
迪杰斯特拉算法实现;迪杰斯特拉--算法思想; 设给定源点为Vs,S为已求得最短路径的终点集,开始时令S={Vs} 。当求得第一条最短路径(Vs ,Vi)后,S为{Vs,Vi} 。根据以下结论可求下一条最短路径。 设下一条最短路径终点为Vj ,则Vj只有: ◆ 源点到终点有直接的弧Vs,Vj; ◆ 从Vs 出发到Vj 的这条最短路径所经过的所有中间顶点必定在S中。即只有这条最短路径的最后一条弧才是从S内某个顶点连接到S外的顶点Vj 。 若定义一个数组dist[n],其每个dist[i]分量保存从Vs 出发中间??经过集合S中的顶点而到达Vi的所有路径中长度最小的路径长度值,则下一条最短路径的终点Vj必定是不在S中且值最小的顶点,即: dist[i]=Min{ dist[k]| Vk∈V-S } 利用上述公式就可以依次找出下一条最短路径。;迪杰斯特拉算法 --数据组织;迪杰斯特拉算法—步骤;迪杰斯特拉算法—实现;;已完成结点集S, 本次最近点;已完成结点集, 本次最近点;已完成结点集, 本次最近点;已完成结点集, 本次最近点;已完成结点集, 本次最近点;已完成结点集, 本次最近点;最短路径结点集;Dijkstra算法的主要执行是: ◆ 数组变量的初始化:时间复杂度是O(n) ; ◆ 求最短

文档评论(0)

1亿VIP精品文档

相关文档