Warning

This documents an unmaintained version of NetworkX. Please upgrade to a maintained version and see the current NetworkX documentation.

networkx.algorithms.components.connected_components

connected_components(G)[source]

Generate connected components.

Parameters

G (NetworkX graph) – An undirected graph

Returns

comp – A generator of sets of nodes, one for each component of G.

Return type

generator of sets

Raises

NetworkXNotImplemented: – If G is directed.

Examples

Generate a sorted list of connected components, largest first.

>>> G = nx.path_graph(4)
>>> nx.add_path(G, [10, 11, 12])
>>> [len(c) for c in sorted(nx.connected_components(G), key=len, reverse=True)]
[4, 3]

If you only want the largest connected component, it’s more efficient to use max instead of sort.

>>> largest_cc = max(nx.connected_components(G), key=len)

To create the induced subgraph of each component use: >>> S = [G.subgraph(c).copy() for c in connected_components(G)]

Notes

For undirected graphs only.