gpt4 book ai didi

algorithm - 你如何使用 Dijkstra 找到更多的路线?

转载 作者:塔克拉玛干 更新时间:2023-11-03 05:15:00 25 4
gpt4 key购买 nike

我实现了 Dijkstra 算法来找到两点之间的最短路径。如何修改它以找到 N 条最短路线?我的想法是在先前找到的路径的最后一个节点上添加一个小权重,但它并不总是能正常工作。有什么想法吗?

最佳答案

您要解决的问题称为 K shortest path problem 。 1971 年,Yen 提出了第一个解决该问题的算法。 ,使用任何最短路径算法找到最佳路径,然后继续寻找最佳路径的 K − 1 个偏差。

算法的运行时间复杂度为O(kn(m + n log n)) ,这是伪多项式,其中 m代表边数,n是顶点数。

可以找到多种编程语言的算法实现 here .

关于algorithm - 你如何使用 Dijkstra 找到更多的路线?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48463011/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com