Given numCourses and prerequisite pairs, return one valid order to finish all courses. Return an empty array if no valid order exists. Pattern focus: Kahn Topological Order. This is the order-producing version of topological sorting.
numCourses = course count, prerequisites = prerequisite pairs [course, prerequisite]
a valid course order or an empty array
Example 1:
Input:
numCourses = 2 prerequisites = [[1,0]]
Output:
[0,1]
Explanation:
Course 0 must be taken before course 1.
Example 2:
Input:
numCourses = 4 prerequisites = [[1,0],[2,1],[3,2]]
Output:
[0,1,2,3]
Explanation:
The chain gives a unique topological order.
Example 3:
Input:
numCourses = 2 prerequisites = [[1,0]]
Output:
[0,1]