tarjan求强联通分量 模板
2024-10-19 00:22:18
void tarjan(int u)
{
dfn[u]=low[u]=++dfs_clock;
stack_push(u); for (int c=head[u];c;c=nxt[c])
{
int v=to[c];
if (!dfn[v])
{
tarjan(v);
low[u]=min(low[u],low[v]);
}
else if (!scc[v])
low[u]=min(low[u],dfn[v]);
} if (low[u]==dfn[u])
{
scc_cnt++;
int cur;
for (;;)
{
scc_size[scc_cnt]++;
cur=stack_pop();
scc[cur]=scc_cnt;
if (cur==u)
break;
}
}
}
最新文章
- yii笔一----基础,安装,结构,增删改查基本操作
- JQ中的方法、事件及动画
- SQL优化笔记—CPU优化
- poj1181 大数分解
- lintcode: 生成括号
- Java编程思想(11~17)
- Objective-C运行时编程 - 方法混写 Method Swizzling
- init进程 &;&; 解析Android启动脚本init.rc &;&; 修改它使不启动android &;&; init.rc中启动一个sh文件
- JS倒计时 代码
- Java学习----集合函数
- JRebel 6 破解版及使用方法
- Qt容器类(总结)(新发现的QQueue和QStack,注意全都是泛型)
- Android打开某个activity时自动弹出输入法键盘
- 3097: Hash Killer I
- C#基础篇--面向对象(类与对象)
- 开源API集成测试工具 Hitchhiker v0.2更新 - 压力测试
- tcp 网络编程
- Media Queries 媒体查询常见设备断点
- C#中IEnumerable、ICollection、IList、IQueryable 、IQueryable 、List之间的区别
- 是时候给Xcode瘦身了
热门文章
- js之oop <;一>; 创建对象,构造器(class)
- poj1873The Fortified Forest
- (一)MII/MDIO接口详解
- 修改jsp文件tomcat发布失败(Could not delete May be locked by another process)
- spring-boot资料
- PKCS #1 RSA Encryption Version 1.5
- PS去掉图片上的文字的6种基本方法,动态教程
- python and java
- windows 下使用 Filezilla server 搭建 ftp 服务器
- MM--发票校验 及基于采购订单的MIRO发票校验过程(