I\'m using networkx
to manage large network graph which consists of 50k nodes.
I want to calculate the shortest path length between a specific set of node
Alternatively, depending on the type of graph--namely, directed, strongly or weakly connected, or undirected--create component subgraphs (sub_G), that is,
(G.subgraph(c) for c in connected_components(G))
or if directed:
nx.weakly_connected_component_subgraphs(G)
or
nx.strongly_connected_component_subgraphs(G)
Furthermore, given sub_G is a directed graph, check for the strength of its connections, e.g.
nx.is_strongly_connected(sub_G)
or
ng.is_weakly_connected(sub_G)
Combined or individually, these recommendations'll reduce unnecessary checking of paths that do not exist due to the nature of the component subgraph(s).