麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 學院 > 開發設計 > 正文

求無向連通圖的割點和割邊/橋

2019-11-08 19:52:16
字體:
來源:轉載
供稿:網友

代碼直接整合了求割點和割邊:

//求無向連通圖的割點和割邊/橋#include <cstdio>#include <cstring>#include <iostream>using namespace std;#define MAXN 1000#define MAXM 10000struct node{	int to;	int next;}edge[MAXM];int head[MAXN];int cnt;int n,m;int index;//時間戳int cut[MAXN];//存割點int bridge[MAXN][MAXN];//存割邊int dfn[MAXN],low[MAXN];//dfn:時間戳;low:可以到達的 訪問時間最早的 祖先(訪問時間比自己早的節點看作自己的祖先)void Init(){	cnt=0;	index=0;	memset(head,0,sizeof(head));	memset(edge,0,sizeof(edge));	memset(cut,0,sizeof(cut));	memset(bridge,0,sizeof(int)*MAXN*MAXN);	memset(dfn,0,sizeof(dfn));}void Add(int x,int y){	cnt++;	edge[cnt].to=y;	edge[cnt].next=head[x];	head[x]=cnt;}void cut_bridge(int cur,int father){	int child=0;	index++;	dfn[cur]=index;	low[cur]=index;	for(int i=head[cur];i;i=edge[i].next){		if(dfn[edge[i].to]&&edge[i].to!=father){			if(dfn[edge[i].to]<low[cur]){				low[cur]=dfn[edge[i].to];			}		}		if(!dfn[edge[i].to]){			cut_bridge(edge[i].to,cur);//可以看出,具體搜索的過程還是下一步走未訪問的點			child++;			if(low[edge[i].to]<low[cur]){				low[cur]=low[edge[i].to];			}			if((father==0&&child>1)||(father!=0&&low[edge[i].to]>=dfn[cur])){				cut[cur]=1;			}			if(low[edge[i].to]>dfn[cur]){				bridge[cur][edge[i].to]=bridge[edge[i].to][cur]=1;			}		}	}}int main(){	int x,y;	freopen("1.txt","r",stdin);	cin>>n>>m;	Init();	for(int i=1;i<=m;i++){		cin>>x>>y;		Add(x,y);		Add(y,x);	}	cut_bridge(1,0);	return 0;}對于非連通圖,對于每個連通分量取一個點調用cut_bridge()函數即可


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 久久久久久三区 | 亚洲情视频 | 黄视频免费在线 | av资源在线天堂 | 中文字幕伦乱 | 国产成人精品免费视频大全办公室 | 欧美a在线观看 | 久久久久久久免费精品 | 欧美爱爱视频 | 国产自在线 | 爽成人777777婷婷 | 欧美日韩免费观看视频 | 羞羞视频入口 | 欧美大逼网 | 毛片一区二区三区四区 | 依人在线视频 | 午夜视频播放 | 午夜影院a | 久久久一区二区三区精品 | 成年人在线免费播放视频 | 特大黑人videos与另类娇小 | 久久在现视频 | 男男啪羞羞视频网站 | 污黄视频在线观看 | 激情在线观看视频 | 久久逼网 | 99热99精品 | 久久精品一区视频 | 毛片免费视频播放 | 久久久精品视 | 黄色毛片视频在线观看 | 黄色特级视频 | 特级黄aaaaaaaaa毛片 | 欧美亚洲综合网 | 午夜天堂在线视频 | 日日摸夜夜添夜夜添牛牛 | 黄色99视频 | 中国字幕av | 毛片免费看电影 | 欧美a级在线免费观看 | 国产精品国产成人国产三级 |