Problem Statement
There are a total of numCourses courses you have to take. Some courses have prerequisites. Return true if you can finish all courses.
Approach
Model as a directed graph. Detect cycle using DFS (recursion stack check) or Kahn's Algorithm (BFS with in-degrees). If a cycle exists, it's impossible.
Time & Space Complexity
Time complexity is O(V + E). Space complexity is O(V + E).
