拓扑排序:课程表Course Schedule2
来源:互联网 发布:黄金眼看图软件 编辑:程序博客网 时间:2024/06/05 23:50
https://leetcode.com/problems/course-schedule-ii/
class Solution {public: vector<int> findOrder(int numCourses, vector<pair<int, int>>& prerequisites) { vector<int> res; vector<int> inDgree(numCourses,0); map<int, vector<int> >adjNode; int len = prerequisites.size(); for (int i = 0; i < len; i++){ pair<int, int> p = prerequisites[i]; //自环 if (p.first == p.second) return res; //平行边 if (find(adjNode[p.second].begin(), adjNode[p.second].end(), p.first) == adjNode[p.second].end()){ adjNode[p.second].push_back(p.first); inDgree[p.first]++; } } queue<int> Q; for (int i=0; i < numCourses; i++){ if (inDgree[i] == 0) Q.push(i); } while (!Q.empty()){ int front = Q.front(); Q.pop(); res.push_back(front); vector<int> adj = adjNode[front]; for (int i:adj){ inDgree[i]--; if (inDgree[i] == 0){ Q.push(i); } } } if (res.size() == numCourses){ return res; } else{ return vector<int>(); } }};
0 0
- 拓扑排序:课程表Course Schedule2
- 拓扑排序:课程表Course Schedule
- Course Schedule 拓扑排序
- Course Schedule[拓扑排序]
- Course Schedule II 拓扑排序
- 【LeetCode】Course Schedule--拓扑排序
- LeetCode Course Schedule II 拓扑排序
- 207. Course Schedule 广度优先&&拓扑排序
- Leetcode 210 Course Schedule II 拓扑排序
- leetcode 207. Course Schedule(拓扑排序)
- 210. Course Schedule II 【Medium】 拓扑排序
- 算法(七)Course Schedule 拓扑排序
- 拓扑排序解210. Course Schedule II
- Leetcode 207 Course Schedule 课程表
- leetcode(207) Course Schedule即拓扑排序讲解
- LeetCode OJ 207. Course Schedule 拓扑排序+邻接表
- LeetCode 210. Course Schedule II|图问题.拓扑排序
- 拓扑排序-207. Course Schedule[medium]
- Android屏幕适配全攻略(最权威的官方适配指导)
- STS项目更正 web与jdk版本不对应等问题 --(Dynamic Web Module 3.1 requires Java 1.7 or newer)
- 【一步一个脚印】Tomcat+MySQL为自己的APP打造服务器(2-2)Servlet的使用
- js 字符串转换数字
- 创建表空间
- 拓扑排序:课程表Course Schedule2
- JSP页面编码问题
- 在android 中开发java.net.SocketException: socket failed: EACCES (Permission denied) 报错
- 邮票分你一半
- mssql游标
- Android拍照、裁剪与相册处理
- Android--从零单排系列(1)--打电话,发短信
- Unity调用IOS时间日期控件UIDatePicker
- JVM性能调优5:Heap堆分析方法