ConnectedComponents
gives the connected components of the graph g.
ConnectedComponents[g,{v1,v2,…}]
gives the connected components that include at least one of the vertices v1, v2, … .
ConnectedComponents[g,patt]
gives the connected components that include a vertex that matches the pattern patt.
ConnectedComponents[{vw,…},…]
uses rules vw to specify the graph g.
Details
- ConnectedComponents returns a list of components {c1,c2,…}, where each component ci is given as a list of vertices.
- For an undirected graph, the vertices u and v are in the same component if there is a path from u to v.
- For a directed graph, the vertices u and v are in the same component if there is a directed path from u to v and from v to u.
- For directed graphs, strongly connected components are computed.
- For undirected graphs, the components are ordered by their length, with the largest component first.
- For directed graphs, the components {c1,c2,…} are given in an order such that there are no edges from ci to ci+1, ci+2, etc.
- ConnectedComponents works with undirected graphs, directed graphs, multigraphs, and mixed graphs.
Examples
open allclose allScope (8)
ConnectedComponents works with undirected graphs:
Use rules to specify the graph:
Select connected components that include at least one of the specified vertices:
Use patterns to select a subset of connected components:
ConnectedComponents works with large graphs:
Applications (4)
Highlight components with more than one vertex in a graph:
A frog in a lily pond is able to jump 1.5 feet to get from one of the 25 lily pads to another. Model the frog's jumping network from the lily leaf density and SpatialGraphDistribution:
Find the largest collection of lily pads the frog can jump between:
Use simulation to find the sizes of the largest collections of lily pads for similar ponds:
Find the number of times the frog would have to swim to visit all lily pads:
Simulate to get results for similar lily ponds:
Find a permutation p such that the matrix A〚p-1,p〛 is block triangular:
Connected components of nonzero positions form block submatrices:
Properties & Relations (4)
Use WeaklyConnectedComponents to get weakly connected components for directed graphs:
Use ConnectedGraphQ to test whether a graph is connected:
A connected graph has exactly one connected component:
Every graph with vertices and edges has at least components:
Text
Wolfram Research (2010), ConnectedComponents, Wolfram Language function, https://reference.wolfram.com/language/ref/ConnectedComponents.html (updated 2015).
CMS
Wolfram Language. 2010. "ConnectedComponents." Wolfram Language & System Documentation Center. Wolfram Research. Last Modified 2015. https://reference.wolfram.com/language/ref/ConnectedComponents.html.
APA
Wolfram Language. (2010). ConnectedComponents. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/ConnectedComponents.html