Biconnected component (source code)

= Biconnected component
{wiki}

A <biconnected component> is a maximal connected <subgraph> with no <cut vertex> of its own. We use the block convention that also includes each <bridge in a graph> with its two endpoint <vertices>, and each isolated <vertex>, as a <biconnected component>. A <biconnected component> with at least three <vertices> stays connected after any single <vertex> deletion. Distinct <biconnected components> share at most one <vertex>; the <vertices> belonging to more than one <biconnected component> are exactly the <cut vertices>. The shared-$A$ example has two <biconnected components>, its two <triangles in a graph>. The joined-$CD$ example has three: $ABC$, the <bridge in a graph> $CD$ with its endpoints, and $DEF$. The <edges> partition into these pieces, while the shared <cut vertices> occur in several pieces. https://algs4.cs.princeton.edu/41graph/[Sedgewick and Wayne, Algorithms, §4.1, biconnected components exercises]{ref}