最短路径问题的概述

最短路径问题,通俗地说,就是寻找一个图(有向图或无向图)两点之间的最短路径。下面我们讨论的都是带权图的最短路径问题,即找出两点之间总权值最小的路径的权值;因此,我们可以把最短路径理解为最小(权)路径。

听起来可能会有些绕口,我们不妨举个实例。一个人若是有急事要开车从一个城市到另一个城市,而我们已知地图上所有的路径及它们的权值(这里的路径权值可以理解为行驶速度、路程长度、费用等综合值;亦即是说,权可以理解为路径的代价),那么我们怎么知道从这个城市行驶到另一个城市的最小总权值呢?

以上一个问题就是一种最短路问题,它属于单一起点单一终点的最短路径问题。除此之外,还有许多最短路径问题,大致可以分为以下几种:

1、求图中一点到其他所有点的最短路径,称为单源最短路问题,相关算法有Dijkstra、Bellman-Ford、SPFA;

2、已知起点、终点求最短路径,它可以转换为1类问题,也就是说求出起点到其它所有点的最短路径,从而求出起点到终点的最短路径,目前来说这种方法求解效率最佳;

3、已知终点,求其他所有点到终点的最短路径,它可以反向转换为1类问题求解;

4、给出多对任意起点终点求最短路径,称为多源最短路问题,它可以转化为若干个1类问题求解,但也有其它简便的算法,如Floyed。

下面定义一些函数与集合,之后介绍的算法都如其含义:

设G=(V,E),其中V是点集,E是点对集(边集)ÿ

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值