zoukankan      html  css  js  c++  java
  • 拓扑排序

    //拓扑排序 
    #include<bits/stdc++.h>
    using namespace std;
    queue<int>q;
    int n,m;
    int in[1000];
    bool b[1001];
    struct node
    {
        int n;
        node *next;
    }*e[1000];
    int main()
    {
        cin>>n>>m;
        node *p;
        int x;
        for(int i=1;i<=m;i++)
        {
            p=new node();
            cin>>x>>p->n;
            in[p->n]+=1;
            if(e[x]==NULL)
            e[x]=p;
            else
            {
                p->next=e[x]->next;
                e[x]->next=p;
            }
        }
      
      
       for(int i=1;i<=n;i++)
        if(in[i]==0)
        q.push(i);
        while(!q.empty())
        {
            node *p;
            p=e[q.front()];
            cout<<q.front()<<"->";
          while(p!=NULL)
         {
            in[p->n]-=1;
            if(in[p->n]==0)
           q.push(p->n);
            p=p->next;
         }    
         q.pop();
        }
        return 0;
    }
  • 相关阅读:
    velocity .vm
    @Autowired
    springMVC
    索引
    Adivisor
    计算火车运行的时间
    倒三角
    XML简介
    表单提交方式
    js动态生成表格
  • 原文地址:https://www.cnblogs.com/war1111/p/7290313.html
Copyright © 2011-2022 走看看