首页 > 编程语言 > 详细

拓扑排序

时间:2019-01-13 19:01:44      阅读:199      评论:0      收藏:0      [点我收藏+]
  • 拓扑排序
    以入度为0的做起点
    void top_sort(){
    queue<int>top;
    for(int i=1;i<=n;i++){
        if(!indeg[i]){
            top.push(i);
            break;
        }
    }
    std::vector<int> TOP;
    while(!top.empty()){
        int T=top.front();
        top.pop();
        indeg[T]=-1;
        TOP.push_back(T);
        for(auto &e:graph[T]){
            indeg[e]--;
        }
        for(int i=1;i<=n;i++){
            if(indeg[i]==0){
                top.push(i);
                break;
            }
        }
    }
    }
  • 拓扑排序

    原文:http://blog.51cto.com/14093713/2342211

    (0)
    (0)
       
    举报
    评论 一句话评论(0
    关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
    © 2014 bubuko.com 版权所有
    打开技术之扣,分享程序人生!