cycle directed

Run Settings
LanguagePython
Language Version
Run Command
def dfs(node, graph, visited, stack): visited.add(node) stack.add(node) for neighbor in graph[node]: if neighbor not in visited : if dfs(neighbor, graph, visited, stack): return True elif neighbor in stack: return True stack.remove(node) return False graph = { 'A': ['B', 'C', 'D'], 'B': ['E'], 'C': ['E'], 'D': [], 'E': [] } visited=set() stack=set() for node in graph: if node not in visited: if dfs(node, graph, visited, stack): # If cycle is detected print("Cycle Detected") break else: print("No Cycle Detected")
Editor Settings
Theme
Key bindings
Full width
Lines