题解 | #检测循环依赖#

检测循环依赖

https://www.nowcoder.com/practice/8dc02ad98553432a90affc3a0484910b

class Solution {
public:
    vector<int> findOrder(vector<vector<int> >& prerequisites, int n) {
        vector<int> ans;
        set<int> tmp;
        map<int, int> dic;
        int i,c = 0;
        for(i = 0;i<prerequisites.size();i++)
        {
            dic[prerequisites[i][0]]++;
            dic[prerequisites[i][1]]++;
        }
        map<int,int>::iterator it;
        for(it = dic.begin();it!=dic.end();it++)
        {
            if(it->second % 2==0) c++;
            tmp.insert(it->first);
        }
        if(c==n) return ans;
        set<int>::iterator s;
        for(s = tmp.begin();s!=tmp.end();s++)
        {
            ans.push_back(*s);
        }
        if(ans.size()==n) return ans;
        sort(ans.begin(), ans.end());
        for(i=ans.size();i<n;i++)
        {
            ans.push_back(ans[i-1]+1);
        }
        return ans;
    }
};

全部评论

相关推荐

01-14 16:23
广州商学院 Java
双非后端失败第N人:如果准备好了可以直接投字节,字节是最不看学历的,只要想面,大概率都能给你约面。
双非有机会进大厂吗
点赞 评论 收藏
分享
01-12 17:45
门头沟学院 Java
985废物一枚:就是问问你能不能接受北京的房租,hr也知道公司工资不高,大概率是要贴钱的
找实习记录
点赞 评论 收藏
分享
评论
点赞
1
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务