🎉 October Learning Month — learn a new software term every day!
An interactive flashcard trainer for software engineering terms.

Tarjan

In plain terms

An algorithm for finding strongly connected components in a graph.

Going deeper

Tarjan's algorithm uses a single DFS with low-link values to identify groups of mutually reachable nodes in a directed graph. It's elegant and linear-time.

Under the hood

O(V+E) in one pass; low-link bookkeeping identifies SCC roots, also adaptable for bridges and articulation points.

Examples

Dependency cycles, deadlock detection, compiler analysis, social clustering.

Think of it like...

Like finding tight-knit friend circles where everyone can reach everyone else within the group.

Feedback & Bug Report