本文简要介绍
networkx.algorithms.shortest_paths.weighted.all_pairs_dijkstra
的用法。用法:
all_pairs_dijkstra(G, cutoff=None, weight='weight')
查找所有节点之间的最短加权路径和长度。
- G:NetworkX 图
- cutoff:整数或浮点数,可选
停止搜索的长度(边权重的总和)。如果提供了截止,则仅返回总权重 <= 截止的路径。
- weight:字符串或函数
如果这是一个字符串,则将通过带有此键的边属性访问边权重(即,连接
u
到v
的边的权重将为G.edge[u][v][weight]
)。如果不存在这样的边属性,则假设边的权重为 1。如果这是一个函数,则边的权重是函数返回的值。该函数必须准确地接受三个位置参数:一条边的两个端点和该边的边属性字典。该函数必须返回一个数字。
- (node, (distance, path)):(节点 obj, (dict, dict))
每个源节点都有两个关联的字典。第一个保存目标键控的距离,第二个保存目标键控的路径。 (有关源/目标节点的术语,请参阅single_source_dijkstra。)如果需要,您可以将
dict()
应用于此函数,以创建由源节点键控到两个字典的字典。
参数:
生成(Yield):
注意:
边权重属性必须是数字。距离计算为遍历的加权边的总和。
产生的字典只有可达节点的键。
例子:
>>> G = nx.path_graph(5) >>> len_path = dict(nx.all_pairs_dijkstra(G)) >>> len_path[3][0][1] 2 >>> for node in [0, 1, 2, 3, 4]: ... print(f"3 - {node}: {len_path[3][0][node]}") 3 - 0: 3 3 - 1: 2 3 - 2: 1 3 - 3: 0 3 - 4: 1 >>> len_path[3][1][1] [3, 2, 1] >>> for n, (dist, path) in nx.all_pairs_dijkstra(G): ... print(path[1]) [0, 1] [1] [2, 1] [3, 2, 1] [4, 3, 2, 1]
相关用法
- Python NetworkX all_pairs_dijkstra_path用法及代码示例
- Python NetworkX all_pairs_dijkstra_path_length用法及代码示例
- Python NetworkX all_pairs_shortest_path用法及代码示例
- Python NetworkX all_pairs_bellman_ford_path用法及代码示例
- Python NetworkX all_pairs_bellman_ford_path_length用法及代码示例
- Python NetworkX all_pairs_shortest_path_length用法及代码示例
- Python NetworkX all_simple_paths用法及代码示例
- Python NetworkX all_node_cuts用法及代码示例
- Python NetworkX all_shortest_paths用法及代码示例
- Python NetworkX all_simple_edge_paths用法及代码示例
- Python NetworkX all_topological_sorts用法及代码示例
- Python NetworkX average_degree_connectivity用法及代码示例
- Python NetworkX add_star用法及代码示例
- Python NetworkX add_path用法及代码示例
- Python NetworkX average_clustering用法及代码示例
- Python NetworkX attr_matrix用法及代码示例
- Python NetworkX arbitrary_element用法及代码示例
- Python NetworkX average_neighbor_degree用法及代码示例
- Python NetworkX attribute_mixing_dict用法及代码示例
- Python NetworkX attr_sparse_matrix用法及代码示例
- Python NetworkX articulation_points用法及代码示例
- Python NetworkX asadpour_atsp用法及代码示例
- Python NetworkX adjacency_graph用法及代码示例
- Python NetworkX astar_path用法及代码示例
- Python NetworkX ancestors用法及代码示例
注:本文由纯净天空筛选整理自networkx.org大神的英文原创作品 networkx.algorithms.shortest_paths.weighted.all_pairs_dijkstra。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。