标签: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