| 1 | Start DFS at node 0 | 0 | - | [0:0,1:-1,2:-1,3:-1,4:-1] | [0:0,1:-1,2:-1,3:-1,4:-1] | No | Nodes: 0(discovery=0, low=0) |
| 2 | Visit neighbor 1 of 0 | 0 | 1 | [0:0,1:-1,2:-1,3:-1,4:-1] | [0:0,1:-1,2:-1,3:-1,4:-1] | No | Nodes: 0(d=0,l=0) |
| 3 | DFS call on node 1 | 1 | - | [0:0,1:1,2:-1,3:-1,4:-1] | [0:0,1:1,2:-1,3:-1,4:-1] | No | Nodes: 0(d=0,l=0),1(d=1,l=1) |
| 4 | Visit neighbor 0 of 1 (parent) | 1 | 0 | [0:0,1:1,2:-1,3:-1,4:-1] | [0:0,1:1,2:-1,3:-1,4:-1] | No | No update, 0 is parent |
| 5 | Visit neighbor 2 of 1 | 1 | 2 | [0:0,1:1,2:-1,3:-1,4:-1] | [0:0,1:1,2:-1,3:-1,4:-1] | No | Nodes: 0(d=0,l=0),1(d=1,l=1) |
| 6 | DFS call on node 2 | 2 | - | [0:0,1:1,2:2,3:-1,4:-1] | [0:0,1:1,2:2,3:-1,4:-1] | No | Nodes: 0(d=0,l=0),1(d=1,l=1),2(d=2,l=2) |
| 7 | Visit neighbor 1 of 2 (parent) | 2 | 1 | [0:0,1:1,2:2,3:-1,4:-1] | [0:0,1:1,2:2,3:-1,4:-1] | No | No update, 1 is parent |
| 8 | Visit neighbor 3 of 2 | 2 | 3 | [0:0,1:1,2:2,3:-1,4:-1] | [0:0,1:1,2:2,3:-1,4:-1] | No | Nodes: 0(d=0,l=0),1(d=1,l=1),2(d=2,l=2) |
| 9 | DFS call on node 3 | 3 | - | [0:0,1:1,2:2,3:3,4:-1] | [0:0,1:1,2:2,3:3,4:-1] | No | Nodes: 0(d=0,l=0),1(d=1,l=1),2(d=2,l=2),3(d=3,l=3) |
| 10 | Visit neighbor 2 of 3 (parent) | 3 | 2 | [0:0,1:1,2:2,3:3,4:-1] | [0:0,1:1,2:2,3:3,4:-1] | No | No update, 2 is parent |
| 11 | Visit neighbor 4 of 3 | 3 | 4 | [0:0,1:1,2:2,3:3,4:-1] | [0:0,1:1,2:2,3:3,4:-1] | No | Nodes: 0(d=0,l=0),1(d=1,l=1),2(d=2,l=2),3(d=3,l=3) |
| 12 | DFS call on node 4 | 4 | - | [0:0,1:1,2:2,3:3,4:4] | [0:0,1:1,2:2,3:3,4:4] | No | Nodes: 0(d=0,l=0),1(d=1,l=1),2(d=2,l=2),3(d=3,l=3),4(d=4,l=4) |
| 13 | Visit neighbor 3 of 4 (parent) | 4 | 3 | [0:0,1:1,2:2,3:3,4:4] | [0:0,1:1,2:2,3:3,4:4] | No | No update, 3 is parent |
| 14 | Backtrack to node 3 | 3 | - | [0:0,1:1,2:2,3:3,4:4] | [0:0,1:1,2:2,3:3,4:4] | No | Update low[3] = min(3,4) = 3 |
| 15 | Check bridge condition for edge 3-4 | 3 | 4 | [0:0,1:1,2:2,3:3,4:4] | [0:0,1:1,2:2,3:3,4:4] | Yes | Bridge found: (3,4) |
| 16 | Backtrack to node 2 | 2 | - | [0:0,1:1,2:2,3:3,4:4] | [0:0,1:1,2:2,3:3,4:4] | No | Update low[2] = min(2,3) = 2 |
| 17 | Check bridge condition for edge 2-3 | 2 | 3 | [0:0,1:1,2:2,3:3,4:4] | [0:0,1:1,2:2,3:3,4:4] | Yes | Bridge found: (2,3) |
| 18 | Backtrack to node 1 | 1 | - | [0:0,1:1,2:2,3:3,4:4] | [0:0,1:1,2:2,3:3,4:4] | No | Update low[1] = min(1,2) = 1 |
| 19 | Check bridge condition for edge 1-2 | 1 | 2 | [0:0,1:1,2:2,3:3,4:4] | [0:0,1:1,2:2,3:3,4:4] | Yes | Bridge found: (1,2) |
| 20 | Backtrack to node 0 | 0 | - | [0:0,1:1,2:2,3:3,4:4] | [0:0,1:1,2:2,3:3,4:4] | No | Update low[0] = min(0,1) = 0 |
| 21 | Check bridge condition for edge 0-1 | 0 | 1 | [0:0,1:1,2:2,3:3,4:4] | [0:0,1:1,2:2,3:3,4:4] | Yes | Bridge found: (0,1) |
| 22 | DFS complete for all nodes | - | - | [0:0,1:1,2:2,3:3,4:4] | [0:0,1:1,2:2,3:3,4:4] | No | All bridges found: (0,1), (1,2), (2,3), (3,4) |