Given a **directed graph** with **n** vertices, find all **Strongly Connected Components (SCCs)** — maximal sets of vertices where every vertex can reach every other vertex in the same set.
Implement this using **Kosaraju's algorithm** (two-pass DFS with graph transpose). Return the SCCs as an array of arrays; each inner array lists the vertices in one component.
Interactive graph explorer available!
Switch to the Visualize tab to build a custom graph and animate BFS traversal to test your intuition.