Leetcode Course Schedule II
来源:互联网 发布:浪漫庄园知乎 编辑:程序博客网 时间:2024/05/17 04:50
题意:给定一些课程的先后顺序,输出一个可行的修课顺序,如果没有则输出空集。
思路:简单拓扑排序,不断寻找入度为0的点。
class Solution {public: vector<int> findOrder(int numCourses, vector<pair<int, int>>& prerequisites) { vector<int> indegree(numCourses, 0); vector<vector<int> >dm; for(int i = 0; i < numCourses; ++ i) { vector<int> temp; dm.push_back(temp); } for(int i = 0; i < prerequisites.size(); ++ i) { vector<int> temp = dm[prerequisites[i].second]; temp.push_back(prerequisites[i].first); dm[prerequisites[i].second] = temp; indegree[prerequisites[i].first] ++; } vector<int> re; for(int i = 0; i < numCourses; ++ i) { int node = -1; for(int j = 0; j < indegree.size(); ++ j) { if(indegree[j] == 0) { indegree[j] = -1; node = j; break; } } if(node == -1) { vector<int> temp; return temp; } for(int j = 0; j < dm[node].size(); ++ j) { indegree[dm[node][j]] --; } re.push_back(node); } return re; }};
0 0
- [leetcode]Course Schedule II
- leetcode - Course Schedule II
- LeetCode Course Schedule II
- [leetcode] Course Schedule II
- leetcode:Course Schedule II
- [LeetCode] Course Schedule II
- Leetcode Course Schedule II
- 【leetcode】Course Schedule II
- leetcode Course Schedule II
- LeetCode Course Schedule II
- [leetcode] Course Schedule II
- #leetcode#Course Schedule II
- LeetCode Course Schedule II
- leetcode Course Schedule II
- Course Schedule II -- leetcode
- Leetcode: Course Schedule II
- [Leetcode] Course Schedule II
- LeetCode -- Course Schedule II
- Unity XML的序列化和反序列化
- Android 系列 2.10格式化显示的时间和日期
- 向上向下取整
- innerHTML和innerText怎么区分?
- 【管我原创,被评论才是好东西】SOA架构
- Leetcode Course Schedule II
- poj 1222 EXTENDED LIGHTS OUT (高斯消元)
- mtk平台hw_get_module分析
- SQL SERVER下非聚集索引引发的死锁问题
- 设计简单的后台管理的数据排序
- tableView
- jsp返回上一个页面并刷新
- 比对YYYY-MM-DD HH:MM:SS格式的日期与当前日期的时间间隔
- POJ 2446 Chessboard(匈牙利算法)