networkx.algorithms.shortest_paths.unweighted.single_source_shortest_path

single_source_shortest_path(G, source, cutoff=None)[source]

Compute shortest path between source and all other nodes reachable from source.

Parameters
GNetworkX graph
sourcenode label

Starting node for path

cutoffinteger, optional

Depth to stop the search. Only paths of length <= cutoff are returned.

Returns
lengthsdictionary

Dictionary, keyed by target, of shortest paths.

See also

shortest_path

Notes

The shortest path is not necessarily unique. So there can be multiple paths between the source and each target node, all of which have the same ‘shortest’ length. For each target node, this function returns only one of those paths.

Examples

>>> G = nx.path_graph(5)
>>> path = nx.single_source_shortest_path(G, 0)
>>> path[4]
[0, 1, 2, 3, 4]