← 返回 amazon 的题目列表Course Schedule Ordering with Prerequisites Validation
类型:online_judge
amazon
Given a list of n courses, each course is represented by its course number and a list of prerequisite courses. Find a sequence that allows completing all courses. Return an empty array if it's impossible to complete all courses. Implement this functionality and include the following test cases.
Test Cases:
Input: courses = [ {'courseNum': 1, 'prerequisites': []}, {'courseNum': 2, 'prerequisites': [0]}, {'courseNum': 3, 'prerequisites': [1, 2]} ] Output: [0, 2, 1, 3] or any other valid order.
Input: courses = [ {'courseNum': 0, 'prerequisites': [1]}, {'courseNum': 1, 'prerequisites': [0]} ] Output: [] # Detects circular dependency
Input: courses = [ {'courseNum': 0, 'prerequisites': []} ] Output: [0]
Input: courses = [] Output: []
Input: courses = [ {'courseNum': 0, 'prerequisites': []}, {'courseNum': 1, 'prerequisites': [0]}, {'courseNum': 2, 'prerequisites': [1]}, {'courseNum': 3, 'prerequisites': [2]} ] Output: [0, 1, 2, 3] or any other valid order.
Example
Input
[{'courseNum': 1, 'prerequisites': []}, {'courseNum': 2, 'prerequisites': [0]}, {'courseNum': 3, 'prerequisites': [1, 2]}]