联通分量

老早就学过,但发现理解的不是很好

而且发现这个东西细节贼重要

1.缩点

缩点是对于有向图的强联通分量

即在同一个强联通分量中每个点都能到达另一个点

代码:

http://www.cnblogs.com/yinwuxiao/p/8444680.html

2.2-sat以及输出方案

对于每个点拆成两个点

对于每一个限制条件,连两条边

另外 如果i一定是真的 从i'向i连一条边

假的同理

然后缩一下点然后看看i和i’在不在同一个连通分量里

然后如何输出方案呢

我们记录出和每一个强联通分量对应的那个块(即i和i’的关系 可以发现对于i在一起的 i’一定在一起)

对于同一个强联通分量里的点,显然值是一样的

我们考虑倒着拓扑排序

因为倒着的话就能满足它的前提条件

然后对于访问到的点 如果还没有被判断 就判断为1 并对它的反点(只有一个) 判断为0

这样就做完了

代码:http://www.cnblogs.com/yinwuxiao/p/8481612.html

下面的都是针对无向图的

1.割点

删去这个点使原图有多个联通块的点就是割点

代码:http://www.cnblogs.com/yinwuxiao/p/8831728.html

2.点-双联通分量

每个点双中任意两点都有两条点不想交的路径

点双与割点的关系

删去割点后的图每个都是一个点双

所以点双中重复出现的点都是割点

代码:

3.边-双联通分量

原文地址:https://www.cnblogs.com/yinwuxiao/p/8808134.html