Interface KVertexConnectedComponentsAlgo


  • public interface KVertexConnectedComponentsAlgo
    Finds the k-vertex connected components of a graph.

    Given a graph \(G = (V, E)\) and an integer \(k\), we say that \(G\) is k-vertex connected if it has at least \(k + 1\) vertices and remains connected after removing any \(k - 1\) vertices. If \(G\) is a clique of size \(k + 1\), then \(G\) is k-vertex connected. The k-vertex connected components of \(G\) are the maximal k-vertex connected subgraphs of \(G\). Note that for a general \(k\), the k-vertex connected components of a graph are not disjoint, and their union is not necessarily the entire graph. For \(k = 1\), the k-vertex connected components are the (strongly) connected components of \(G\). For \(k = 2\), the k-vertex connected components are the bi-connected components of \(G\). Isolated vertices (with no edges) are considered to be 0-vertex connected components (also can be treated as a clique of size 1).

    For k-edge connected components, see KEdgeConnectedComponentsAlgo.

    Use newInstance() to get a default implementation of this interface. A builder obtained via newBuilder() may support different options to obtain different implementations.

    Author:
    Barak Ugav
    See Also:
    Wikipedia, StronglyConnectedComponentsAlgo, BiConnectedComponentsAlgo, KEdgeConnectedComponentsAlgo