桥与边双联通分量
1|0板子和常识
https://oi-wiki.org/graph/bcc/
板子用的是 tarjan算法2 的思想
只能跑无向图
-
理论基础
-
SCC部分
对于一个连通分量图,我们很容易想到,在该连通图中有且仅有一个
使得 。该结点一定是在深度遍历的过程中,该连通分量中第一个被访问过的结点,因为它的 和 值最小,不会被该连通分量中的其他结点所影响。因此,在回溯的过程中,判定
是否成立,如果成立,则栈中 及其上方的结点构成一个 SCC。 -
桥与边双联通部分
我们先总结出一个重要的性质,在无向图中,DFS 生成树上的边不是树边就只有非树边。
我们联系一下求强连通分量的方法,在无向图中只要一个分量没有桥,那么在 DFS 生成树上,它的所有点都在同一个强连通分量中。
反过来,在 DFS 生成树上的一个强连通分量,在原无向图中是边双连通分量。
可以发现,求边双连通分量的过程实际上就是求强连通分量的过程
-
-
板子解释
2|0怎么用
- 求每个边双联通分量
由理论基础中:
反过来,在 DFS 生成树上的一个强连通分量,在原无向图中是边双连通分量。
显然,强连通分量就是答案
-
求桥
https://ac.nowcoder.com/acm/contest/81601/D
https://ac.nowcoder.com/acm/contest/view-submission?submissionId=70636428
由桥的定义:
对于一个无向图,如果删掉一条边后图中的连通分量数增加了,则称这条边为桥或者割边。
那么对于一条边,如果两个顶点不属于同一个联通快,那显然就是一个桥。
对于该板子的使用,即对于 bel[x] != bel[y]
,
__EOF__

本文链接:https://www.cnblogs.com/kdlyh/p/18338041.html
关于博主:评论和私信会在第一时间回复。或者直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角【推荐】一下。您的鼓励是博主的最大动力!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 记一次.NET内存居高不下排查解决与启示