Skip to main content
Back to the DSA atlas
Graphs Algorithm Advanced

Bridges and Articulation Points

Use DFS timestamps and low-link values to find the edges and vertices whose removal disconnects an undirected graph.

graphsbridgesarticulation-pointsrare

Interactive visualization

Use the controls to connect the idea to concrete operations before diving into the full write-up.

0 - 1
1 - 2
2 - 0
1 - 3
3 - 4
4 - 5
5 - 3

node 0

disc = 0

low = 0

node 1

disc = 1

low = 0

node 2

disc = 2

low = 0

node 3

disc = 3

low = 3

node 4

disc = 4

low = 3

node 5

disc = 5

low = 3

One low-link idea, two answers

An edge (u, v) is a bridge when the child side cannot reach an ancestor of u, so low[v] > disc[u].

Family

Graphs

Nodes, edges, traversal, connectivity, and shortest paths.

Builds on

2 topics

Read these first if you want the surrounding context.

Unlocks

0 next topics

Use these follow-ups when you want to apply the current idea in a richer setting.

Learning paths

2

This topic appears in curated progressions so you can keep moving without guessing the next step.

Problem

In an undirected graph, you may want to know:

  • which edges are critical connections
  • which vertices are critical junctions

A bridge is an edge whose removal increases the number of connected components. An articulation point is a vertex whose removal does the same.

Core idea

During DFS, record:

  • disc[u]: when u was first discovered
  • low[u]: earliest discovery time reachable from u’s subtree using at most one back edge

That single low-link concept answers both questions.

Bridge rule

For a DFS tree edge u -> v:

low[v]>disc[u]low[v] > disc[u]

means the subtree of v cannot climb back above u, so removing (u, v) disconnects the graph.

Articulation-point rule

A non-root node u is an articulation point if it has a DFS child v such that:

low[v]disc[u]low[v] \ge disc[u]

A root is an articulation point when it has more than one DFS child.

Why it matters

These problems are where many people first see low-link values outside SCCs.

They matter in:

  • network reliability
  • road or server criticality
  • block-cut trees and biconnected components
  • “critical connection” interview variants

Complexity

OperationTime
Find all bridges/articulation pointsO(V+E)O(V + E)

Key takeaways

  • One DFS plus low-link values solves both bridge and articulation-point detection
  • Bridges talk about critical edges; articulation points talk about critical vertices
  • The inequalities differ slightly: > for bridges, >= for articulation children
  • This is rare advanced graph material, but it fills an important gap between basic traversal and serious connectivity analysis

Practice problems

ProblemDifficultyKey idea
Critical Connections in a Network🔴 HardBridge detection
Submerging Islands🔴 HardArticulation points
Necessary Roads🔴 HardBridge reporting

Relation to other topics

  • DFS provides the discovery tree and back edges
  • Tarjan SCC uses related low-link reasoning on directed graphs
  • Eulerian Path is another graph-structure topic that depends on understanding connectivity constraints

Build on these first

These topics supply the mental model or underlying structure that this page assumes.

Related directions

These topics live nearby conceptually, even if they are not direct prerequisites.

More from Graphs

Stay in the same family when you want parallel variations of the same mental model.

Paths that include this topic

Follow one of these sequences if you want a guided next step instead of open-ended browsing.

From the blog

Pair the atlas with recent writing from the rest of the site when you want a broader engineering perspective alongside the topic graph.