single_source_shortest_path_length#

sklearn.utils.graph.single_source_shortest_path_length(graph, source, *, cutoff=None)#

返回从源点到所有可到达节点的最短路径长度。

Parameters:
graph{array-like, sparse matrix} of shape (n_nodes, n_nodes)

图的邻接矩阵。优先使用LIL格式的稀疏矩阵。

sourceint

路径的起始节点。

cutoffint, default=None

停止搜索的深度 - 仅返回长度 <= cutoff 的路径。

Returns:
pathsdict

可到达的终点节点映射到从源点的路径长度,即 {end: path_length}

Examples

>>> from sklearn.utils.graph import single_source_shortest_path_length
>>> import numpy as np
>>> graph = np.array([[ 0, 1, 0, 0],
...                   [ 1, 0, 1, 0],
...                   [ 0, 1, 0, 0],
...                   [ 0, 0, 0, 0]])
>>> single_source_shortest_path_length(graph, 0)
{0: 0, 1: 1, 2: 2}
>>> graph = np.ones((6, 6))
>>> sorted(single_source_shortest_path_length(graph, 2).items())
[(0, 1), (1, 1), (2, 0), (3, 1), (4, 1), (5, 1)]