【问题标题】:Algorithm to find "subpath" of a path of nodes (map/cities)查找节点路径(地图/城市)的“子路径”的算法
【发布时间】:2020-04-06 07:34:09
【问题描述】:

我觉得错过了一些明显的东西,或者至少我感觉处于“启示”的边缘,但仍然无法克服它:)

我有一个客户销售从城市 A 到城市 Z 的运输工具。运输订单存储在 MariadDB 中。 我想帮助他使用他的卡车,所以当另一个客户要求在 A 到 B 的任何地方进行运输时,比如从 C 到 X,我需要知道 :)

我从 Google 地图 API 开始,但从结果中获取“城市”是模糊的、相当复杂和昂贵的。 考虑到客户只能与“主要”城市合作,我们准备创建一个全国所有主要城市的图表。

可能的解决方案: 考虑使用 Djikstra 的算法来确定图中的路径,将一个运输订单的所有节点存储在 DB 中,然后针对 DB 查询任何新订单以查看 start+finish 位置是否属于任何其他先前的运输订单...

如果您能想到更快或更简单的方法,请给我一个链接和微笑:)

最后的挑战: 我们正在与 nginx/php/mariadb 上的网站合作,没有实质性的框架。 我们的解决方案可能会在区域基础上解决问题,但我正在寻找全球解决方案,想想全球运输......我搜索了 stackoverflow 问题,但我没有看到这个问题的答案。

我对最荒谬的想法持开放态度,我的一个朋友开始谈论 xml 树或正则表达式中的 xpath...:)

谢谢,

亚历山大

【问题讨论】:

    标签: php sql algorithm graph-algorithm dijkstra


    【解决方案1】:

    与其分配它,不如拥有一个市场并让司机抢工作?

    他们知道自己要去哪里以及在任何特定时间他们在哪里。

    他们还知道他们是否已满或在路线的那部分是否有空间。

    因此,我认为显示未结订单的来源、目的地、尺寸和重量就足够了。

    【讨论】:

    • 如果他们可以选择查看其所在位置 X 英里/公里范围内的工作,那么这不是一个坏方法,这样池子就不会太宽。或者,如果你想自己做这一切并发布工作,我推荐 Djikstra
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-07-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-04-02
    • 1970-01-01
    • 2010-12-23
    相关资源
    最近更新 更多