第25章:每对顶点间的最短路径—基于矩阵乘法的动态规划算法

本文介绍了使用基于矩阵乘法的动态规划算法来解决单源最短路径问题,特别适用于边权重可负但无负权环的情况。算法初始时间复杂度为Θ(V^4),应用「重复平方」技术后降低到Θ(V^3 log V)。通过递归计算矩阵,可以得到最短路径权重及前驱节点信息。
摘要由CSDN通过智能技术生成

书中介绍了基于矩阵乘法的动态规划,floyd-warshall和Johnson这三种算法来解决单源最短路径问题。它们的适用情形如下:

算法 适用情形
基于矩阵乘法的动态规划 有向图(能应用于无向图,因为可以把无向图理解为有向图),边的权重可以为负值,不能有权重和为负值的环路
floyd-warshall 有向图(也能应用于无向图),边的权重可以为负值,不能存在权重和为负值的环路
Johsnon 有向图(也能应用于无向图),边的权重必须可以为负值,如果存在权重和为负值的环路,算法会探测到并报告出来
一:基于矩阵乘法的动态规划算法

该算法适用于边权重可以为负值,但不能有权重和为负值的环路。当不应用“重复平方”技术时,算法的运行时间为 Θ(V4) ;应用该技术时,算法的运行时间为 Θ(V3lgV)

假设 lmij 为从结点i到结点j的至多包含m条边的任意路径中的最小权重。当m等于1时,不难发现 l1ij=W ,W为图边权重矩阵。对于m>1,我们需要计算的 lmij lm1ij</

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值