[LeetCode]210. Course Schedule II
来源:互联网 发布:开淘宝网店进货渠道 编辑:程序博客网 时间:2024/06/07 04:52
https://leetcode.com/problems/course-schedule-ii/?tab=Description
课程有先修要求,要到一个正确的课程顺序
找到当前入度为零的课程加到结果list里面,同时把这个课程的后续课程入度减一,最后看结果list中是否包括所有课程
public class Solution { public int[] findOrder(int numCourses, int[][] prerequisites) { int[] indegree = new int[numCourses]; int[][] matrix = new int[numCourses][numCourses]; for (int[] arr : prerequisites) { int pre = arr[1]; int now = arr[0]; indegree[now]++; matrix[pre][now] = 1; } Queue<Integer> queue = new LinkedList(); for (int i = 0; i < numCourses; i++) { if (indegree[i] == 0) { queue.add(i); } } List<Integer> list = new LinkedList(); while (!queue.isEmpty()) { int pre = queue.poll(); list.add(pre); for (int i = 0; i < numCourses; i++) { if (matrix[pre][i] != 0) { indegree[i]--; if (indegree[i] == 0) { queue.add(i); } } } } if (list.size() != numCourses) { return new int[0]; } else { int[] res = new int[numCourses]; for (int i = 0; i < list.size(); i++) { res[i] = list.get(i); } return res; } }}
0 0
- [leetcode] 210.Course Schedule II
- Leetcode 210. Course Schedule II
- 210. Course Schedule II LeetCode
- leetcode 210. Course Schedule II
- LeetCode *** 210. Course Schedule II
- leetcode.210. Course Schedule II
- LeetCode 210. Course Schedule II
- 【LeetCode】210. Course Schedule II
- Leetcode 210. Course Schedule II
- LeetCode 210. Course Schedule II
- Leetcode 210. Course Schedule II
- [LeetCode]210. Course Schedule II
- leetcode 210. Course Schedule II
- LeetCode 210. Course Schedule II
- LeetCode 210. Course Schedule II
- 【LeetCode】210. Course Schedule II
- [leetcode]210. Course Schedule II
- leetcode 210. Course Schedule II
- hdu1015 Safecracker —— 回溯
- codevs天梯 乌龟棋
- JQ AJAX踩坑
- C++ STL 学习笔记 string
- c语言排序算法
- [LeetCode]210. Course Schedule II
- angularJS11-ng-repeat 来循环数组
- tomcat启动卡死在: Initializing Spring root WebApplicationContext的解决办法
- 第六届蓝桥杯【省赛试题6】加法变乘法
- Uncaught TypeError: Cannot set property '0' of undefined 关于JavaScript多维数组
- P2279 [HNOI2003]消防局的设立
- angularJS12-ng-repeat 指令用在一个对象数组上
- 最小乘车费用-SSL 1643
- 2013年第四届蓝桥杯C/C++B组真题训练(一,2017.3.3)