Algorithm 有没有比Dijkstra算法更好的方法来找到不超过指定成本的最快路径

Algorithm 有没有比Dijkstra算法更好的方法来找到不超过指定成本的最快路径,algorithm,dijkstra,Algorithm,Dijkstra,我在寻找不超过指定成本的最快路径时遇到问题。 这里有一个类似的问题,但是它们之间有很大的区别。 在这里,数据中唯一可以显示的记录是从较低点到较高点的记录(例如,1->3可能会出现,但3->1可能不会出现)(见下文)。不知道的话,我会用Dijkstra。这些额外的信息,可能会让它比Dijkstras算法快一点。 你觉得怎么样 假设我有指定的最高成本和4条记录 // specified cost 10 // end point 5 //(start point) (finish p

我在寻找不超过指定成本的最快路径时遇到问题。 这里有一个类似的问题,但是它们之间有很大的区别。 在这里,数据中唯一可以显示的记录是从较低点到较高点的记录(例如,1->3可能会出现,但3->1可能不会出现)(见下文)。不知道的话,我会用Dijkstra。这些额外的信息,可能会让它比Dijkstras算法快一点。 你觉得怎么样

假设我有指定的最高成本和4条记录

// specified cost
    10 
// end point
    5
//(start point) (finish point) (time) (cost)
    2 5 50 5
    3 5 20 9
    1 2 30 5
    1 3 30 7
// all the records lead from a lower to a higher point no.
我必须决定,是否有可能从第(1)点到第(5)点(如果没有成本为2的路径,这是不可能的

1 2 30 5

它不允许您在深度n处为每个节点移动2,路径的最小成本为
n/2*(路径的最小第一条边+连接到节点的最小边)
-算术级数之和。如果此计算超过所需的最大值,则无需检查后续节点。将这些节点切断,并在其余节点上应用Dijkstra。

我猜最快路径不超过x是一个非常常见的问题。我打赌我在Wikipedia上看到过它的讨论。我将尝试查找它。+1
1 2 30 5