码迷,mamicode.com
首页 > 编程语言 > 详细

拓扑排序

时间:2019-01-13 19:09:45      阅读:133      评论:0      收藏:0      [点我收藏+]

标签:oid   int   tor   queue   rap   break   void   --   push   

  • 拓扑排序
    以入度为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;
            }
        }
    }
    }
  • 拓扑排序

    标签:oid   int   tor   queue   rap   break   void   --   push   

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

    (0)
    (0)
       
    举报
    评论 一句话评论(0
    登录后才能评论!
    © 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
    迷上了代码!