数据结构 图之单源最短路径

 我来答
世纪网络17
2022-06-24 · TA获得超过6053个赞
知道小有建树答主
回答量:2426
采纳率:100%
帮助的人:157万
展开全部

百度百科

给定一个带权有向图G=(V,E),其中每条边的权是一个实数。另外,还给定V中的一个顶点,称为源。现在要计算从源到其他所有各顶点的最短路径长度。这里的长度就是指路上各边权之和。这个问题通常称为单源最短路径 [1] 问题。

问题描述

给定一个带权有向图 G=(V,E)。另外,还给定 V 中的一个顶点,称为源。现在我们要计算从源到所有其他各顶点的最短路径长度。这里的长度是指路上各边权之和。这个问题通常称为单源最短路径问题。

即先求出长度最短的一条最短路径,再参照它求出长度次短的一条最短路径,依次类推,直到从源点v 到其它各顶点的最短路径全部求出为止。

举个书上的题当作例子

初始化的距离向量

这时候的路径向量为:

接下来,就是将源点A到其他结点距离最短的结点找出来,这里最短的是到D结点加到集合S当中,并且:

距离向量变为:

由于现在A到G和F通过了D顶点,导致顶点G和F的前驱结点变为了D,即路径向量变为3

路径向量为:

接下来继续向后找,发现最短的路径是到E,所以将其加入集合S,并且:

距离向量变为:

由于 A->C 变成了 A->E->C ,所以C的前驱结点变为了E,即4

路径向量为:

继续向下推导,最终结果为:

距离向量:

路径向量:

可以从表中的数据得出:

总结为:

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式