拓扑排序模板
来源:互联网 发布:淘宝开旗舰店费用 编辑:程序博客网 时间:2024/05/20 16:10
#include <stdio.h>#include <string.h>#include <iostream>#include <algorithm>#include <queue>using namespace std;const int maxn = 20010;//ip表示第几条边//indeg表示入度int head[maxn], ip, indeg[maxn];int n, m, seq[maxn];//seg表示要干的事struct note{ int v,next;} edge[maxn];void Init(){ memset(head, -1, sizeof(head)); memset(indeg, 0, sizeof(indeg)); ip = 0;}void addedge(int u, int v)//增加边,u是初始点,v是终点{ edge[ip].v = v; edge[ip].next = head[u]; head[u] = ip++;}int topo()//拓扑排序{ queue<int> q; for(int i=1; i<=n; i++) if(indeg[i] == 0) q.push(i); int k = 0; bool res = false; while(!q.empty()) { if(q.size() != 1) res = true; int u = q.front(); q.pop(); k++; for(int i=head[u]; i!=-1; i=edge[i].next) { int v = edge[i].v; indeg[v]--; if(indeg[v] == 0) { //seq[v] = seq[u]+1; q.push(v); } } } if(k < n) return -1;//No if(res) return 0;//Only return 1;//正常}
0 0
- 拓扑排序的模板
- 拓扑排序及模板
- 拓扑排序模板
- 拓扑排序模板
- 拓扑排序模板
- 拓扑排序-模板
- 拓扑排序toposort 模板
- 拓扑排序模板
- 拓扑排序模板
- 拓扑排序算法模板
- 拓扑排序【模板】
- 拓扑排序模板
- 拓扑排序模板
- 拓扑排序模板
- 拓扑排序模板
- 拓扑排序模板
- 拓扑排序模板
- 拓扑排序模板
- ****************本文是Lua编写的游戏接入多盟SDK*******************
- HDU 1009 FatMous'Trade(贪心)
- POJ 2975 Nim(nim博弈)
- ORACLE 创建和管理表
- 梯度下降(Gradient Descent)
- 拓扑排序模板
- 深入浅出ShellExecute
- 黑马程序员_面向对象(3)_(异常)
- SwipeRefreshLayout实现下拉刷新、上拉加载更多功能
- c/C++程序占用的内存部分
- XMLConfig
- Kth Largest Element in an Array
- hdu5391 Zball in Tina Town
- char、char*、char**数组