Dijkstra(迪杰斯特拉)算法是典型的最短路径路由算法,用于计算一个节点到其他所有节点的最短路径。主要特点是以起始点为中心向外层层扩展,直到扩展到终点为止。
Dijkstra算法
能得出最短路径的最优解,但由于它遍历计算的节点很多,所以效率低。
Dijkstra算法是很有代表性的最短路算法,在很多专业课程中都作为基本内容有详细的介绍,如数据结构,图论,运筹学等等。
其基本思想是,设置顶点集合S并不断地作贪心选择来扩充这个集合。一个顶点属于集合S当且仅当从源到该顶点的最短路径长度已知。
初始时,S中仅含有源。设u是G的某一个顶点,把从源到u且中间只经过S中顶点的路称为从源到u的

Dijkstra算法是数据结构和图论中的经典最短路径算法。它通过不断贪心选择扩充顶点集合S来寻找源点到各顶点的最短路径。初始时,S仅含源点,每次迭代从V-S中选取特殊路径最短的顶点加入S,并更新最短路径长度。例如,在有向图中,应用该算法可以找到从源顶点1到所有顶点的最短路径。算法结束条件是所有顶点都进入S集合。

3万+

被折叠的 条评论
为什么被折叠?



