gpt4 book ai didi

python - 寻找 Dijkstra 路径的总成本

转载 作者:行者123 更新时间:2023-11-28 18:15:45 25 4
gpt4 key购买 nike

我有网络中两个节点之间的最短路径。

我正在尝试找出两个节点之间的总成本。

import numpy as np 
import networkx as nx

def shortest_path(a,b):
m = np.array([[0,2,1,....]])
network = nx.from_numpy_matrix(m)
path = nx.dijkstra_path(network, source=a, target=b)
ix =[[path[i],path[i+1]] for i in range(len(path)-1)]
total = sum([m[i[0]][i[1]] for i in ix])
path = nx.dijkstra_path(network, source=a, target=b)
return(total, path)

我只是想知道是否有一个属性可以找到总成本变量而不是我必须编写代码以便我的代码看起来更清晰?我似乎无法在文档中找到它,因为我是 networkx 的新手。提前致谢

最佳答案

您可以使用 single_source_dijkstra .您的示例用法(改编自文档中的示例):

total, path = nx.single_source_dijkstra(network, source=a, target=b)

关于python - 寻找 Dijkstra 路径的总成本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48518804/

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