Fetching algorithms...
Fetching algorithms...
Watch key transitions, pointers, and variables update step-by-step.
Read clean, documented implementations across multiple patterns.
Sketch diagrams on an infinite canvas and draft notes directly inline.
numCourses = 2, prerequisites = [[1,0]]truenumCourses = 2, prerequisites = [[0,1],[1,0]]falsenumCourses = 3, prerequisites = [[0,1],[0,2],[1,2]]trueCycle detection in directed graph using DFS. Use 3 states: unvisited(0), visiting(1), visited(2). If we encounter a node in 'visiting' state during DFS, there's a cycle. Build adjacency list from prerequisites and check all nodes.
Time Complexity
Space Complexity