207. Course Schedule

本是古典 何须时尚 2021-12-22 06:57 324阅读 0赞
  1. class Solution {
  2. public boolean canFinish(int numCourses, int[][] prerequisites) {
  3. int[] indegrees=new int[numCourses];
  4. int[][] graph=new int[numCourses][numCourses];
  5. for(int i=0;i<prerequisites.length;i++)
  6. {
  7. if(graph[prerequisites[i][1]][prerequisites[i][0]]==0)
  8. indegrees[prerequisites[i][0]]++;
  9. graph[prerequisites[i][1]][prerequisites[i][0]]=1;
  10. }
  11. int count=0;
  12. Queue<Integer> que=new LinkedList<Integer>();
  13. for(int i=0;i<indegrees.length;i++)
  14. if(indegrees[i]==0)
  15. que.add(i);
  16. while(!que.isEmpty())
  17. {
  18. int c = que.poll();
  19. count++;
  20. for(int i=0;i<numCourses;i++)
  21. if(graph[c][i]!=0)
  22. {
  23. indegrees[i]--;
  24. if(indegrees[i]==0)
  25. que.add(i);
  26. }
  27. }
  28. return count==numCourses;
  29. }
  30. }

  

转载于:https://www.cnblogs.com/asuran/p/7796570.html

发表评论

表情:
评论列表 (有 0 条评论,324人围观)

还没有评论,来说两句吧...

相关阅读