栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

具有时间限制的图上的寻路(路由,行程计划等)算法

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

具有时间限制的图上的寻路(路由,行程计划等)算法

  1. 将您的问题建模为图表。每个站点将是一个顶点,而每个总线/火车将是一个边缘。
  2. 创建一个函数
    w:Edges->R
    ,指示每个边的时间/金钱/…。
  3. 现在,您有一个典型的最小路径问题,可以通过Dijkstra算法解决 ,该算法从给定源中查找到所有顶点的最小路径。

(*)对于“最小过渡”,您的权重实际上是每个边的1,因此您甚至可以通过运行BFS或双向
BFS而不是dijkstra来优化此权重,如我在这篇文章中所解释的。距离,但实际上是相同的算法]。


编辑
作为对图表的非静态性质的编辑(对于时间),您在注释中提到的时间(关于价格和过渡数量,我上面提到的内容仍然适用,因为这些图表是静态的),您可以使用距离向量路由算法,它实际上适用于动态图,是Bellman
Ford算法的分布式变体。
算法思路:

  • 周期性地,每个顶点将其“距离矢量”发送给它的邻居[该矢量指示从发送顶点到另一个顶点行进的“成本”是多少。
  • 它的邻居试图更新其路由表[最好通过哪个边缘移动到每个目标]
  • 对于您的情况,每个节点[到达时间+等待时间]知道到达邻居的最快方法是什么,并且[顶点/站]将此数字加到距离向量中的每个对象中,以便知道如何以及到达目的地所需的时间。公交车离开时,应重新计算[从此来源]所有节点的旅行时间,并将新矢量发送给它的邻居


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/449357.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号