邻接表拓扑排序,保证从小到大输出(未测试)
来源:互联网 发布:淘宝优惠券jp519 编辑:程序博客网 时间:2024/06/07 20:25
#include<cstdio>#include<algorithm>#include<cmath>#include<cstring>#include<queue>#include<vector>using namespace std;const int N=100009;int head[N],tot,pre[N],edge[N],n,m,b[N],cnt[N],a[N];void add(int x,int y){edge[++tot]=y;pre[tot]=head[x];head[x]=tot;}int main(){scanf("%d%d",&n,&m);int x,y;while (m--){scanf("%d%d",&x,&y);cnt[y]++;add(x,y);}priority_queue<int,vector<int>,greater<int> > q;for (int i=1;i<=n;i++) if (cnt[i]==0) q.push(i);int z=0;while (!q.empty()){int u=q.top();q.pop();a[u]=++z;for (int i=head[u];i;i=pre[i]){int v=edge[i];cnt[v]--;if (cnt[v]==0) q.push(v);}}for (int i=1;i<=n;i++) printf("%d ",a[i]);return 0;}
0 0
- 邻接表拓扑排序,保证从小到大输出(未测试)
- 邻接表拓扑排序
- 邻接表拓扑排序
- Reward(拓扑排序+邻接表)
- hdu1285 拓扑排序+邻接矩阵(邻接表)
- 拓扑排序(基于邻接表实现)
- Reward 2647 (拓扑排序+邻接表)
- hdu 2647 Reward(拓扑排序+邻接表)
- 图的拓扑排序(邻接表实现)
- HDOJ 4857 逃生(拓扑排序(邻接表+反向建图,逆序输出+优先队列))
- poj 1094 拓扑排序+邻接表
- 邻接表实现的拓扑排序
- 拓扑排序_基于邻接表
- 图之拓扑排序(邻接表存储)
- 图 邻接链表的拓扑排序
- 拓扑排序(C语言 邻接表)
- 邻接表实现--图的拓扑排序
- 邻接表存储的拓扑排序
- 每个线程块中最大线程问题
- 用currentColor做主题色
- Llinux常用命令2
- 办公室助手教你整理电脑桌面 5步让它不再凌乱不堪
- Flex 布局教程:语法篇
- 邻接表拓扑排序,保证从小到大输出(未测试)
- Tableau自定义分类调色板
- Spring MVC jsonp跨域调用 中文乱码问题处理
- 我的第一份HTML简历
- mapreduce
- linux 命令pidof - 找出正在运行程序的进程PID
- JHTP小结_第六章_深入理解Methods(方法)
- C++编程:ASCII,UTF-8,Unicode字符串相互转换
- android插入耳机状态使用扬声器外放音乐