diff --git "a/lcof2/\345\211\221\346\214\207 Offer II 113. \350\257\276\347\250\213\351\241\272\345\272\217/README.md" "b/lcof2/\345\211\221\346\214\207 Offer II 113. \350\257\276\347\250\213\351\241\272\345\272\217/README.md" index 52e72ae62a670..f8ee6368db33d 100644 --- "a/lcof2/\345\211\221\346\214\207 Offer II 113. \350\257\276\347\250\213\351\241\272\345\272\217/README.md" +++ "b/lcof2/\345\211\221\346\214\207 Offer II 113. \350\257\276\347\250\213\351\241\272\345\272\217/README.md" @@ -269,6 +269,46 @@ public class Solution { } ``` +#### Swift + +```swift +class Solution { + func findOrder(_ numCourses: Int, _ prerequisites: [[Int]]) -> [Int] { + var graph = Array(repeating: [Int](), count: numCourses) + var indegree = Array(repeating: 0, count: numCourses) + + for prereq in prerequisites { + let course = prereq[0] + let prereqCourse = prereq[1] + graph[prereqCourse].append(course) + indegree[course] += 1 + } + + var queue = [Int]() + for i in 0.. diff --git "a/lcof2/\345\211\221\346\214\207 Offer II 113. \350\257\276\347\250\213\351\241\272\345\272\217/Solution.swift" "b/lcof2/\345\211\221\346\214\207 Offer II 113. \350\257\276\347\250\213\351\241\272\345\272\217/Solution.swift" new file mode 100644 index 0000000000000..3bb5be6ec4b4d --- /dev/null +++ "b/lcof2/\345\211\221\346\214\207 Offer II 113. \350\257\276\347\250\213\351\241\272\345\272\217/Solution.swift" @@ -0,0 +1,35 @@ +class Solution { + func findOrder(_ numCourses: Int, _ prerequisites: [[Int]]) -> [Int] { + var graph = Array(repeating: [Int](), count: numCourses) + var indegree = Array(repeating: 0, count: numCourses) + + for prereq in prerequisites { + let course = prereq[0] + let prereqCourse = prereq[1] + graph[prereqCourse].append(course) + indegree[course] += 1 + } + + var queue = [Int]() + for i in 0..