数学联邦政治世界观
超小超大

割点

对于一个无向图,如果把一个点删除后这个图的极大连通分量数增加了,那么这个点就是这个图的割点(又称割顶)。

换句话说,如果删除某个顶点后,导致图不再连通,那么刚才删除的顶点就是割点。

1、4、3、2、6、5

如果顶点U的所有孩子顶点可以不通过父顶点U而访问到U的祖先顶点,那么说明此时去掉顶点U不影响图的连通性,U就不是割点。相反,如果顶点U至少存在一个孩子顶点,必须通过父顶点U才能访问到U的祖先顶点,那么去掉顶点U后,顶点U的祖先顶点和孩子顶点就不连通了,说明U是一个割点。

即判断割点的方法是:对于某个顶点u,如果至少存在一个顶点v(u的儿子),使得loωυ>=dfnᵤ ,即不能回到祖先,那么u点为割点。

这里我们还需要考虑一个特殊情况,就是DFS的根顶点(一般情况下是编号为0/1的顶点),因为根顶点没有祖先顶点。其实根顶点是不是割点也很好判断,如果从根顶点出发,一次DFS就能访问到所有的顶点,那么根顶点就不是割点。反之,如果回溯到根顶点后,还有未访问过的顶点,需要在邻接顶点上再次进行DFS,根顶点就是割点。

求解割点,对Tarjan算法

其中st[i]为1的点为割点

void Tarjan(int u,int p){

int son=0;

dfn[u]=low[u]=++dfncnt;

for(auto i:g[u]){

if(!dfn[i]){

son++;

Tarjan(i,u);

low[u]=min(low[u],low[i]);

if(p!=-1&&low[i]>=dfn[u]){

st[u]=1;

}

}else if(i!=p){

low[u]=min(low[u],dfn[i]);

}

}

if(p==-1&&son>1)st[u]=1;

};

割边

对于一个无向图,如果删掉一条边后图中的连通分量数增加了,则称这条边为桥或者割边。

即在一个无向图中删除某条边后,图不再连通,这个边就是割边。

割点与桥(割边)的关系:

1)有割点不一定有桥,有桥一定存在割点(从判定方式也可以发现)

2)桥一定是割点依附的边。

6、7、1、2、3、5、4

判断割边的方式和割点差不多:对于某个顶点u,如果有loωυ>=dfnᵤ ,那么u-v为桥求解割边时和是不是根节点无关

割点集和割边集都是通过Tarjan算法求得,无论通过哪个点开始都可以

void Tarjan(int u, int p) {

low[u] = dfn[u] = ++dfncnt;

for (auto v:g[u]) {

if (!dfn[v]) {

Tarjan(v, u);

low[u] = min(low[u], low[v]);

if (low[v]>dfn[u]) {

ans.push_back({v,u});//v,u为割边

++cnt;

}

} else if (dfn[v]<dfn[u] && v != p) {

low[u] = min(low[u], dfn[v]);

}

}

}

数学联邦政治世界观提示您:看后求收藏(笔尖小说网http://www.bjxsw.cc),接着再看更方便。

相关小说

十二星座之星空璀璨 连载中
十二星座之星空璀璨
陌cc
当你仰望天空,星空璀璨,繁星闪耀,如此美丽的背后究竟是怎样的凶险和困境,才有如此漂亮的星空呢?星空之下隐藏的秘密又是什么呢?|星空如此璀璨,......
6.3万字9个月前
凤隐山河 连载中
凤隐山河
二酱紫
《凤隐山河》讲述现代法医林锦书穿越架空王朝。凭借刑侦技术破解《璇玑录》死局的故事。当她腕间赤凤纹引发时空裂隙,竟发现镇北王世子谢珩的“尸体”......
2.7万字4个月前
樱花巷心动信号 连载中
樱花巷心动信号
二手口香糖
1.5万字4个月前
予你囚光 连载中
予你囚光
时珺3881882278
强制性的完本是为了更好的创作新的。因为有很多想法不让出来。
8.7万字3个月前
恐怖副本:她杀穿副本,却无人怪她 连载中
恐怖副本:她杀穿副本,却无人怪她
暖暖的小太阳nndxty
前文:“你好呀”一个十岁的孩子站在那里,人畜无害地跟你说着话,可她的周围,却是鲜血飞溅,尸体在地上横七竖八地躺着,而她站在中间,却好似什么都......
0.7万字3个月前
快穿之填坑计划 连载中
快穿之填坑计划
阿语呐
不填坑遭雷劈任之初你自己去填坑吧。人妖殊途:修炼千年的大妖x当朝丞相"官人以诚待我,我当然以命相护。"我欲与君知,长命无绝衰。相隔千年:考古......
0.5万字1个月前