数据结构 力扣 练习

拓扑:

课程表,课程表II

课程表
课程表II

cpp 复制代码
class Solution {
public:
    bool canFinish(int numCourses, vector<vector<int>>& prerequisites) {
        int n=numCourses,cnt=0;
        vector<int> du(n);
        vector<vector<int>> e(n);
        queue<int> q;
        for (auto a:prerequisites){
            int x=a[1],y=a[0];
            e[x].push_back(y);
            du[y]++;
        }
        for (int i=0;i<n;i++){
            if (du[i]==0){
                cnt++;
                q.push(i);
            }
        }
        while (!q.empty()){
            int u=q.front();
            q.pop();
            for (auto v:e[u]){
                du[v]--;
                if (!du[v]){ 
                    cnt++;
                    q.push(v);
                }
            }
        }
        return cnt==n;
    }
};
相关推荐
NAGNIP5 小时前
一文搞懂树模型与集成模型
算法·面试
NAGNIP5 小时前
万字长文!一文搞懂监督学习中的分类模型!
算法·面试
技术狂人1685 小时前
工业大模型工程化部署实战!4 卡 L40S 高可用集群(动态资源调度 + 监控告警 + 国产化适配)
人工智能·算法·面试·职场和发展·vllm
D_FW5 小时前
数据结构第六章:图
数据结构·算法
a程序小傲6 小时前
京东Java面试被问:动态规划的状态压缩和优化技巧
java·开发语言·mysql·算法·adb·postgresql·深度优先
自学不成才6 小时前
深度复盘:一次flutter应用基于内存取证的黑盒加密破解实录并完善算法推理助手
c++·python·算法·数据挖掘
CS创新实验室6 小时前
计算机专业考研复试全解析:流程、内容与策略
考研·408·复试
June`7 小时前
全排列与子集算法精解
算法·leetcode·深度优先
徐先生 @_@|||7 小时前
Palantir Foundry 五层架构模型详解
开发语言·python·深度学习·算法·机器学习·架构