> For the complete documentation index, see [llms.txt](https://garychang.gitbook.io/data-structure/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://garychang.gitbook.io/data-structure/4-graph/4.7-others.md).

# 4.7 - Others

Articulation Point, Biconnected Graph, Biconnected Component

### Articulation Point

在connected undirected graph中，若將某vertex及其連接的邊刪除後會造成剩下的subgraph變成unconnected，此種vertex稱為articulation point。

#### 如何求出articulation points?

1. 求出各點的DFS number order
2. 畫出DFS  spaning tree，並標示出**back edge**&#x20;
3. 算出low值

   $$low(x)=\min{DFN(x),\ DFN(y)}$$，y為包含x的後代子孫經過最多一條back edge所到達的頂點編號。
4. 判斷articulation point法則
   1. 若root有2個子點，則root是articulation point
   2. 針對其他點x，若low(x的子點)≥DFN(x)，則x是articulation point

e.g.

<img src="https://2769815795-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LGckN3OAfinKuVIrkMj%2F-LJ2CsQ3KHeulXqO9GlB%2F-LJ2CvCbnn1KPhZ1aGHw%2F%E8%9E%A2%E5%B9%95%E5%BF%AB%E7%85%A7%202018-08-04%2012.34.44.jpg?alt=media&amp;token=d8a7937e-3c37-439d-8aca-d1550f23ce2d" alt="" data-size="original">&#x20;

1. &#x20;

   <img src="https://2769815795-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LGckN3OAfinKuVIrkMj%2F-LJ2a3h5pTeg3a9R45G_%2F-LJ2a6SxOn0RK6fhdY52%2F%E8%9E%A2%E5%B9%95%E5%BF%AB%E7%85%A7%202018-08-04%2014.20.28.jpg?alt=media&amp;token=8a68c047-3e0e-4b2f-90d8-1508181d2f74" alt="" data-size="original">&#x20;

   (不一定是此順序)
2. &#x20;&#x20;

   <img src="https://2769815795-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LGckN3OAfinKuVIrkMj%2F-LJ2gj6ofuR-oWAqWgVJ%2F-LJ2hZ_K7wlxzVHH22A6%2F%E8%9E%A2%E5%B9%95%E5%BF%AB%E7%85%A7%202018-08-04%2014.53.07.jpg?alt=media&amp;token=92443fb7-d31d-4022-ab59-92d4cdc2e1bf" alt="" data-size="original">&#x20;
3. &#x20;&#x20;

   0, 4, 8, 9 $$\Rightarrow$$無子點，不是articulation point

   3$$\Rightarrow$$Root有兩個子點

   low(0)=2

   low(1)=0

   low(2)=0

   low(3)=0

   low(4)=0

   low(5)=5

   low(6)=5

   low(7)=5

   low(8)=9

   low(9)=8

articulation point: {1, 3, 5, 7}

### Biconnected Graph

沒有任何articulation points的connected undirected graph稱為biconnected graph。

e.g.

<img src="https://2769815795-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LGckN3OAfinKuVIrkMj%2F-LJ2D2qQUMEFdIMIIhaU%2F-LJ2DOevFf0pQsuwZ1au%2F%E8%9E%A2%E5%B9%95%E5%BF%AB%E7%85%A7%202018-08-04%2012.36.46.jpg?alt=media&amp;token=ca8e0a2a-1583-4b5c-97cf-c4f946b721b2" alt="" data-size="original">&#x20;

### Biconnected Component

Undirected graph $$G$$, $$G'$$ is a biconnected component of $$G$$ if $$G'$$ satisfies:

1. $$G'$$ is biconnected subgraph
2. There is no connected subgraph of $$G$$ included $$G'$$&#x20;

e.g.

<img src="https://2769815795-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LGckN3OAfinKuVIrkMj%2F-LJ2CsQ3KHeulXqO9GlB%2F-LJ2CvCbnn1KPhZ1aGHw%2F%E8%9E%A2%E5%B9%95%E5%BF%AB%E7%85%A7%202018-08-04%2012.34.44.jpg?alt=media&amp;token=d8a7937e-3c37-439d-8aca-d1550f23ce2d" alt="" data-size="original">&#x20;

biconnected components:

![](https://2769815795-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LGckN3OAfinKuVIrkMj%2F-LJ2D2qQUMEFdIMIIhaU%2F-LJ2E6vwF0E70LrOQBBw%2F%E8%9E%A2%E5%B9%95%E5%BF%AB%E7%85%A7%202018-08-04%2012.40.05.jpg?alt=media\&token=255e9a19-e33f-42dd-aeca-5883a023e90f)
