Search⌘ K
AI Features

Solution: Parallel Courses

Explore how to compute the minimum number of semesters required to finish all courses given their prerequisite relationships. Understand how to model course dependencies as a directed graph and apply depth-first search with cycle detection and memoization to identify the longest dependency chain. This lesson helps you solve course scheduling problems efficiently and detect impossible scenarios caused by circular prerequisites.

Statement

You are designing a course schedule for a university with n courses, labeled from 1 to n. The prerequisite requirements are given in an array, relations, where each relations[i]=[prevCoursei,nextCoursei]\text{relations}[i] = [\text{prevCourse}_i, \text{nextCourse}_i] means that prevCoursei\text{prevCourse}_i must be completed before you can enroll in nextCoursei\text{nextCourse}_i ...