MCPcopy Index your code
hub / github.com/neetcode-gh/leetcode / canFinish

Method canFinish

java/0207-course-schedule.java:3–22  ·  view source on GitHub ↗
(int numCourses, int[][] prerequisites)

Source from the content-addressed store, hash-verified

1class Solution {
2
3 public boolean canFinish(int numCourses, int[][] prerequisites) {
4 List<List<Integer>> adj = new ArrayList<>();
5 for (int i = 0; i < numCourses; i++) {
6 adj.add(new ArrayList<>());
7 }
8
9 for (int i = 0; i < prerequisites.length; i++) {
10 adj.get(prerequisites[i][0]).add(prerequisites[i][1]);
11 }
12
13 int[] visited = new int[numCourses];
14 for (int i = 0; i < numCourses; i++) {
15 if (visited[i] == 0) {
16 if (isCyclic(adj, visited, i)) {
17 return false;
18 }
19 }
20 }
21 return true;
22 }
23
24 private boolean isCyclic(List<List<Integer>> adj, int[] visited, int curr) {
25 if (visited[curr] == 2) {

Callers

nothing calls this directly

Calls 3

isCyclicMethod · 0.95
addMethod · 0.45
getMethod · 0.45

Tested by

no test coverage detected