我正在尝试解决一个类似于我下面描述的问题。你能不能建议一个解决方案或推荐一些算法在NetworkX中试用。非常感谢。你知道吗
假设有一个球的起始动量为100。球在失去所有的动量和停止之前,能沿着所有可能的路径走多远?你知道吗
当球滚上坡时,它失去了动量(即边缘的重量为负)。你知道吗
当球滚下山时,它获得动量(即边缘有正重量)。你知道吗
示例:
第一条路径:(1)---[权重:-50]-->;(2)---[权重:40]-->;(3)---[权重:-50]-->;(4)---[权重:-90]-->;(5)
第二条路径:(1)--[重量:-105]-->;(6)
等等
因此,在第一条路径中,球只能到达节点4。在第二条路径中,球不会越过节点1。你知道吗
bellman\u ford\u的前身\u和\u距离算法似乎可以工作。如果距离<;=-100,那么球就停在前一个节点上,所以我复制了图,删除了相关的边,然后再次运行算法进行检查。你知道吗
我还没有在
Networkx
中找到任何用于此目的的特殊算法。您可以使用以下函数,该函数使用Bellman-Ford算法:相关问题 更多 >
编程相关推荐