Course Schedule

TopicDifficultyCompanies
Graph Algorithms
HARD
Amazon

There are a total of n courses you have to take, labeled from 0 to n-1. Some courses may have prerequisites, for example, to take course 3 you have to first take course 2, which is expressed as a pair: [3, 2]. Given the total number of courses and a list of prerequisite pairs, is it possible for you to finish all the courses?

Problem Note

  • Return 1 if it is possible to finish all the courses, or 0 if it is not possible to finish all the courses.
  • The input prerequisites is a graph represented by a list of edges, not adjacency matrices.
  • You may assume that there are no duplicate edges in the input prerequisites.

Example 1

Input: n = 3
list of prerequisite pairs = [[1, 0], [2, 1], [3, 2]]

Output: 1
Explanation: There are a total of 3 courses to take. To pick course 1 you should have finished course 0, and to pick course 2 you should have finished course 1 and to pick course 3 you should have finished course 2. So it is possible.

Example 2:

Input: n = 2
list of prerequisite pairs = [[1,0],[0,1]]

Output: 0
Explanation: There are a total of 2 courses to take.To take course 1 you should have finished course 0, and to take course 0 you should also have finished course 1.So it is impossible.

Code Editor

Practice and Learn

Best way to learn is through solving real problems. Practice this problem in this code editor.