Tarjan——入门笔记

Tarjan入门笔记

有向图的强连通分量

联通分量的定义:分量中任意两点,u,v。必然可以从u走到v,从v走到u。
强连通分量定义:极大联通分量(任何一个联通分量加上一个点之后都不是一个联通分量了。)
作用:将有向图缩点成为一个有向无环图。(DAG)(拓扑图)
dfs序搜索的时候几个概念
1,树枝边
2,前向边(特殊的树枝边)
3,后向边
4,横叉边
dfn[u]:u的时间戳是多少。
low[u]:从u开始走所能遍历到的最小时间戳。

无向图的强连通分量

1,边双联通分量:极大的不包含桥的联通块。
2,点双联通分量:极大的不包含割点的双联通分量。
如何判桥?
我们遍历点的时候,如果这个节点的最早时间戳严格小于自己父亲节点的low[u]那么这条树枝边就是桥。
如何找到边双联通分量?
1,把所有的桥删掉。
2,使用栈,类似有向图的遍历,当我们节点还存在栈 中的时候就代表他属于这个边双联通分量。

相关结论:

有向图变成强连通分量需要加max(p,q)条边,p,q是缩点后的起点个数和终点个数
无向图变成边双联通分量需要添加 ( c n t + 1 / 2 ) (cnt+1/2) cnt+1/2向下取证,cnt是叶子节点的个数。
持续更新。。。。。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值