207. Course Schedule Medium
来源:互联网 发布:淘宝上的路吉星电子狗 编辑:程序博客网 时间:2024/06/06 04:05
先修课的安排问题,要判断能不能修完所给的课程,只要看图中有没有环。思路参考上一篇图的文章。AC代码如下。
这是用递归判断每一个点开始做DFS是否有环,实际上性能稍差,因为有重复判断的情况,可以加一个数组存储递归的结果,免去重复递归的情况。
class Solution {public: bool canFinish(int numCourses, vector<pair<int, int> >& prerequisites) { vector<vector<int> > matrix(numCourses); for(int i = 0; i < prerequisites.size(); i++) matrix[prerequisites[i].second].push_back(prerequisites[i].first); int visit[numCourses] = {0}; for(int i = 0; i < numCourses; i++) if(isCircle(i, matrix, visit))return false; return true; } bool isCircle(int v, vector<vector<int> >& matrix, int * visit) { if(visit[v])return true; visit[v] = 1; for(int i = 0; i < matrix[v].size(); i++){ if(isCircle(matrix[v][i], matrix, visit))return true;}visit[v] = 0;return false;}};
阅读全文
0 0
- 207. Course Schedule Medium
- 【LeetCode】207. Course Schedule (Medium)
- LeetCode 207. Course Schedule [Medium]
- 207. Course Schedule 难度:medium 类别:图
- 207. Course Schedule (Medium)&& 210. Course Schedule II(Medium)
- [Leetcode 207, Medium] Course Schedule
- LeetCode #207 - Course Schedule - Medium
- 210. Course Schedule II Medium
- 拓扑排序-207. Course Schedule[medium]
- 第十二周 leetcode 207. Course Schedule(Medium)
- 207. Course Schedule【Medium】 DFS判断无环
- Leetcode解题笔记 207.Course Schedule [Medium] 拓扑排序
- [Leetcode 270, Medium] Course Schedule II
- 【LeetCode】210. Course Schedule II (Medium)
- LeetCode #210 - Course Schedule II - Medium
- 210. Course Schedule II 【Medium】 拓扑排序
- 算法第九周Course Schedule[medium]
- [leetcode] 207.Course Schedule
- CMD常用命令
- CSU 1957: Apache还想再活五百年
- C++难点的一些总结(1)
- 在windows下Qt5.7/C++怎么连接MySQL数据库
- node.js 学习笔记
- 207. Course Schedule Medium
- html中的其他的常用标签
- Android服务Service详解(作用,生命周期,AIDL)系列文章-为什么需要服务呢?
- 编码GBK的不可映射字符
- GAN入门教程 | 从0开始,手把手教你学会最火的神经网络
- Java程序员的几条建议
- OBJECTIVE-C编程(第2版)学习笔记2
- 使用PHP开发App接口的一些体会
- 剑指offer——机器人的运动范围(回溯)