Tarjan
来源:互联网 发布:快递助手软件 编辑:程序博客网 时间:2024/06/05 07:21
//记得每次清边vector<int>Edge[maxm];stack<int>S;int Dfn[maxn],Low[maxn],sccno[maxn],tclock,sccnt;//sccno代表某个点所在的强连通分量编号void tarjan(int u){ Dfn[u] = Low[u] = ++tclock; S.push(u); for(int i = 0;i < Edge[u].size();i++){ int v = Edge[u][i]; if(!Dfn[v]){ tarjan(v); Low[u] = min(Low[u],Low[v]); } else if(!sccno[v]){ Low[u] = min(Low[u],Dfn[v]); } } if(Low[u] == Dfn[u]){ sccnt ++; int v = -1; while(v != u){ v = S.top(); S.pop(); sccno[v] = sccnt; } }}void findscc(int n){ tclock = sccnt = 0; //各种数组初始化 memset(Dfn,0,sizeof(Dfn)); memset(Low,0,sizeof(Low)); memset(sccno,0,sizeof(sccno)); for(int i = 1;i <= n;i++) if(!Dfn[i]) tarjan(i);}
阅读全文
0 0
- tarjan
- Tarjan
- Tarjan
- tarjan
- tarjan
- tarjan
- Tarjan
- Tarjan
- Tarjan
- Tarjan
- Tarjan
- tarjan
- Tarjan
- Tarjan
- Tarjan
- tarjan
- tarjan算法
- hdoj1269 Tarjan
- 数据库学习纪要(二十):MySQL简介-4
- ZooKeeper系列(二)
- 2018 秋招 百度二轮面试---血淋淋的经历写实
- java类的封装与构造方法
- 支持向量机(SVM)的特点与不足
- Tarjan
- dlib 07 dlib自带demo 基于DNN的人脸识别
- C语言字符串处理函数
- 分段计算居民水费
- 人脸识别 opencv和python
- 【测序实验】-CS0100-《用于高通量测序研究的人体微生物样品收集、处理、运输和储存规范》
- 关于DOM
- codevs 1217 借教室(线段树区间修改+最值)
- 一道迅雷编程题题