无向图的边双连通分量
无向图的边双连通分量
桥:删除某条边后连通分量数目变多
边双连通分量:该联通分量中不含桥
$tarjan:$类似于有向图,给一个时间戳,假设当前的low[j] < low[u] 则代表,他无法通过任何一条边到达u及u以上的点,所以当前这个边就一定是个桥
对于无向边来说,前向边、后向边、横插边、树枝边这些里对桥有贡献的只有后向边,他是不存在横插边的因为无向横插就等价于一个前面的前向边了。
无向图的点双连通分量
割点:把与某个点相连的边都删掉,图的连通分量的数目变多,则该点称为割点
点双连通分量:该连通分量中不含割点
如何判断是一个割点?
不是根节点:当前这个点的low[j] > dfn[u] 子节点能到的最早的节点都大于父节点的时间戳,否则的话就存在一个环,这些问题很多直觉上就应该去找环,来证明。
根节点:至少有连两个这样的子节点
$tarjan:$相似的思想给一个时间戳,假设low[j] >= dfn[u] 这就是可能是一个联通分量,点的双连通分量比较特殊,一个割点应该至少属于连个联通分量中,因此我们在缩点的时候,就要开一虚拟割点,将实际个点放入每一个联通分量中

浙公网安备 33010602011771号