方法一:bfs 实现的拓扑排序,拓扑排序最终剩下节点删不掉,则不能完成所有课程的学习。 代码如下: 1//方法一: bfs 实现的拓扑排序2boolcanFinish(intnumCourses, vector<vector<int>>&prerequisites)3{4vector<vector<int>> r_adjcent(numCourses);//用逆临接表 表示图5vector<int> out_degree(numCourses);/...
方法一:入度表(广度优先遍历) 解题思路: 统计课程安排图中每个节点的入度,生成 入度表 indegrees。 借助一个队列 queue,将所有入度为 0 的节点入队。 当queue 非空时,依次将队首节点出队,在课程安排图中删除此节点 pre: * 并不是真正从邻接表中删除此节点 pre,而是将此节点对应所有邻接节点 cur 的入度 ...
你这个学期必须选修 numCourses 门课程,记为 0 到 numCourses - 1 。 在选修某些课程之前需要一些先修课程。 先修课程按数组 prerequisites 给出,其中 prerequisites[i] = [ai, bi] ,表示如果要学习课程 ai 则 必须 先学习课程 bi 。 例如,先修课程对 [0, 1] 表示:想要学习课程 0 ,你需要先完成课程 ...
207. 课程表 题目来源:力扣(LeetCode)https://leetcode-cn.com/problems/course-schedule 题目 你这个学期必须选修 numCourse 门课程,记为 0 到 numCourse-1 。 在选修某些课程之前需要一些先修课程。 例如,想要学习课程 0 ,你需要先完成课程 1 ,我们用一个匹配来表示他们:[0,1]...