Method
hasCycle
(self, course, deps, visited, tracker)
Source from the content-addressed store, hash-verified
| 4 | # Adapted from https://youtu.be/yPldqMtg-So |
| 5 | |
| 6 | def hasCycle(self, course, deps, visited, tracker): |
| 7 | visited.add(course) |
| 8 | tracker.add(course) |
| 9 | for n in deps[course]: |
| 10 | if n not in visited and self.hasCycle(n, deps, visited, tracker): |
| 11 | return True |
| 12 | if n in tracker: |
| 13 | return True |
| 14 | tracker.remove(course) |
| 15 | return False |
| 16 | |
| 17 | def canFinish(self, numCourses, prerequisites): |
| 18 | deps = defaultdict(set) |
Tested by
no test coverage detected