有向图强连通分量 模板
来源:互联网 发布:守望先锋配置检测软件 编辑:程序博客网 时间:2024/06/16 20:53
强连通分量是指两两互相可达的一个分量。利用dfn而不是low的原因是还在栈中的元素low并没有计算完,而且没有计算low的必要,在割点后的已经被计算,在割点前的low值也不由这个节点来决定。
const int maxn = 10010;stack<int> stk;vector<int> G[maxn];int dfn[maxn], low[maxn], vis[maxn];int times, tot;//强连通分量的个数void tarjan(int u){ dfn[u] = low[u] = ++times; stk.push(u); vis[u] = -1; for(int i = 0; i < G[u].size(); ++i){ int v = G[u][i]; if(vis[v] == 0){ tarjan(v); low[u] = min(low[u], low[v]); } else{ if(vis[v] == -1) low[u] = min(low[u], dfn[v]); } } if(dfn[u] == low[u]){//u是一个强连通分量的根 tot++; while(!stk.empty()){ int v = stk.top(); stk.pop(); vis[v] = 1; if(v == u) break; } }}void solve(int n){ for(int i = 1; i <= n; ++i){ if(vis[i] == 0) tarjan(i); }}
1 0
- 有向图强连通分量 模板
- 有向图强连通分量模板
- 模板[有向图的强连通分量] -hdu 3072
- 有向图强连通分量tarjan算法模板
- 求有向图强连通分量:Trajan算法模板
- 有向图的强连通分量 模板
- 有向图强连通分量Tarjan模板
- poj 3180 有向图的强连通分量 模板
- hdu1269有向图强连通分量(tanjar模板)
- 有向图的强连通分量
- 有向图的强连通分量
- 有向图的强连通分量
- 有向图的强连通分量
- 有向图的强连通分量
- 有向图的强连通分量
- 有向图的强连通分量
- 有向图强连通分量Tarjan
- 有向图 强连通分量
- Android——Jni使用总结
- Q-learning寻径(练手)
- Android程序框架设计
- ServletContextListener
- iOS - 一个方法搞定自定义tabBarItem中的控件位置均分
- 有向图强连通分量 模板
- C3P0 详细配置及问题解决大全
- Could not find class 'com.umeng.analytics.d' 解决的方案分享
- Process Hacker源码中的用户态hook的做法
- Android使用FFmpeg
- sybase的sql字段别名,可以直接作为where中的条件
- 解决: Plugin with id 'com.jfrog.bintray' not found.
- 第一个缺失的整数(循环不变式)
- Android 中 java.lang.IllegalArgumentException: pointerIndex out of range 异常的处理方法