Вы находитесь на странице: 1из 3

FINDING ARTICULATION POINTS

ALGORITHM Step 1. Do a dfs of the graph, say starting from node 1. Step 2. Give a depth first numbering(dfn) to the nodes of the graph. Step 3. The L or LOW or Least value of a node is the least numbered(dfn) node that can be obtained by a back edge from the node to one of its ancestors, or the least node that can be obtained by a back edge from any one of its descendants. Step 4. If the dfn of a node is less than or equal to the L value of one of its children then the node is a articulation point. TO COMPUTE THE L VALUES TRAVERSE THE DEPTH FIRST

SPANNING TREE IN POSTORDER AND APPLY THE FORMULA: L of a node = min{dfn of the node, min{L of the children of the node}, dfn of a node that is obtained by a back edge from the node or its children} NOTE:- FOR A SMALL GRAPH THE L VALUES CAN BE OBTAINED BY INSPECTION In the graph below, in the dfs spanning tree:
Tree edges

Back edges

N means not an ariculation point Y means it is an articulation point

SAMPLE GRAPH
DFN=1 DFN=7 DFN=8

6 5

1
DFN=9 DFN=6 DFN=2

7
DFN=17 DFN=16

4
DFN=3 DFN=10

15 14
DFN=18 DFN=15

8 8

DFN=4

DFN=5

DFN=11

11 10 9 13
DFN=12

16

12

17

DFN=19 DFN=14 DFN=13

19

18

Node N Lnode=low,least value DFNnode DFNnode<=Lchild .

1 1 1 N

2 1 6 Y

3 1 3 Y

4 1 2 N

5 6 7 Y

6 8 8 N

7 6 9 N

8 6 10 Y

9 5 5 N

10 4 4 N

11 10 15 Y

12 10 12 Y

13 10 11 N

14 10 16 Y

15 17 17 N

16 15 18 N

17 15 19 N

18 14 14 N

19 13 13 N

Вам также может понравиться