Unformatted text preview: COMP271H COMP271H
Tutorial 5 Biconnected graph Biconnected component Biconnected graph Biconnected Definition: A connected graph that is NOT broken by NOT removal of a single vertex (and its edges) single from the graph from It implies: At least two vertices removal (if It any) are needed to disconnect the graph any) A biconnected graph contains NO articulation biconnected point (AP) point Another definition: Another Examples: Biconnected graph Examples: Not biconnected graph Why not?? Reason: It is NOT connected It is biconnected Why? Reason: It is connected and contains no AP (formal definition) Examples: Biconnected graph Examples: Trees (>2 nodes) are NOT biconnected Why? Reason: It contains AP Complete graph is biconnected Why? Reason: It is connected and removal of any single vertex still ensure connectivity Biconnected components Biconnected A biconnected component is defined as biconnected the maximal biconnected subgraph maximal It does not contain any larger sub-graph It larger inside it If G’ is a biconnected component, then any If subgraph (not including G’) is NOT biconnected biconnected Biconnected components Biconnected Not a biconnected component Not a biconnected component A biconnected component Application Application In a network design, we want to have a In robust network robust Network with AP is NOT robust Reason: If that AP fails, the network is disconnected disconnected Goal: Find a network of N nodes, which contains no AP and number of edges is no minimal minimal Solution: Biconnected component of N nodes Today’s tutorial Today’s (Unrelated to application) Input: A connected graph Output: Identification of connected components Algorithm design (Observations) Algorithm Key observations: Two different biconnected components Two CANNOT have a common edge (but they can CANNOT have common vertex) have That common vertex MUST BE an AP (Why?) That MUST
• Reason: Input graph is connected, the only thing makes it NOT biconnected is the existence of AP makes These APs “separate” different biconnected These components components Idea: See AP, split the AP into two vertices DFS-based algorithm DFS-based Should be similar to finding AP Idea: Algorithm workflow Algorithm Possible way to modify Possible pseudo-code of ArtPt(v) Initial condition…. Create a new empty stack Instead of output v, we create a new stack, Instead push (v,w) into the stack push push (v,w) into the stack push If we detect AP…. Otherwise…. ...
View Full Document