青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
遠風工作室
C++博客
|
首頁
|
發新隨筆
|
發新文章
|
聯系
|
聚合
|
管理
隨筆:92 文章:0 評論:72 引用:0
判斷圖連通&求割點的算法
之所以把判斷圖連通的算法以及求圖中割點的算法放在一起寫,是因為這兩者之間有一定的關系。注意:
只有連通圖中才可能有割點,不連通的圖是沒有割點的
。總的來說,這兩類算法都離不開并查集結構和BFS先深搜索,具體如下:
1.判斷圖連通的算法
第一種方法基于BFS,首先利用鄰接表(鏈表形式或者數組形式都可以)存儲圖的信息,然后取標號值最小的頂點u作為根節點進行先深搜索,最終搜索到的節點將形成一棵樹,判斷圖是否連通,只要判斷是否所有節點都在樹上即可。
代碼如下:
//
graph[][]存儲圖信息,num[]存儲每個頂點的鄰接點數目
memset(flag,
0
,
sizeof
(flag));
DFS(
1
);
for
(i
=
1
; i
<=
nodeNum; i
++
)
{
if
(flag[i]
==
false
)
{
printf(
"
不連通\n
"
);
}
}
//
DFS算法
void
DFS(
int
x)
{
int
i;
flag[x]
=
true
;
for
(i
=
0
; i
<
num[x]; i
++
)
{
if
(flag[graph[x][i]]
==
false
)
{
DFS(graph[x][i]);
}
}
}
然而這種算法存在弊端,就是需要存儲所有的邊信息,當邊信息足夠多時,存儲數組graph[][]、num[]和flag[]的開銷是很大的。第二種基于并查集的方法則解決了這個弊端,關于并查集的內容具體可見:
http://m.shnenglu.com/amazon/archive/2009/08/15/93457.html
。對所有的邊信息進行并查集處理后,如果該圖是連通圖,那么所有節點的根節點指針都指向同一個點。
代碼如下:
a
=
Find(record[
0
]);
for
(j
=
1
; j
<
num_record; j
++
)
{
if
(a
!=
Find(record[j]))
{
printf(
"
The door cannot be opened.\n
"
);
break
;
}
}
2.求割點的算法
首先必須保證,
所求的圖是連通圖,不連通的圖沒有割點
。
該算法依然基于BFS,按照標號值大小依次將圖中的頂點隱去,對剩下的所有節點進行先深搜索,根據搜索子樹的數目即可知道隱去的節點是否割點(數目為1,非割點;數目為2以上,割點),并可根據子樹的數目知道刪除該割點后連通子圖的數目。
代碼如下:
jump
=
false
;
for
(i
=
1
; i
<=
nodeNum; i
++
)
{
subnetNum
=
0
;
HowMuch(i, subnetNum);
if
(subnetNum
!=
1
)
{
printf(
"
%d是割點,刪除后有%d個連通子圖\n
"
, i, subnetNum);
jump
=
true
;
}
}
if
(jump
==
false
)
{
printf(
"
不是割點\n
"
);
}
//
DFS算法
void
DFS(
int
x)
{
int
i;
flag[x]
=
true
;
for
(i
=
0
; i
<
num[x]; i
++
)
{
if
(flag[graph[x][i]]
==
false
)
{
DFS(graph[x][i]);
}
}
}
//
判斷是否割點
void
HowMuch(
int
x,
int
&
subnetNum)
{
int
i;
memset(flag,
0
,
sizeof
(flag));
flag[x]
=
true
;
for
(i
=
1
; i
<=
nodeNum; i
++
)
{
if
(flag[i]
==
false
)
{
subnetNum
++
;
DFS(i);
}
}
}
發表于 2009-08-17 19:24
遠風
閱讀(2877)
評論(0)
編輯
收藏
引用
所屬分類:
數據結構 / 算法
只有注冊用戶
登錄
后才能發表評論。
【推薦】100%開源!大型工業跨平臺軟件C++源碼提供,建模,組態!
相關文章:
數的整除特征【轉載】
判斷圖連通&求割點的算法
并查集學習小結
判斷回文素數的方法
判斷素數的算法
Dijkstra算法
AVL樹總結
網站導航:
博客園
IT新聞
BlogJava
博問
Chat2DB
管理
<
2009年8月
>
日
一
二
三
四
五
六
26
27
28
29
30
31
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
1
2
3
4
5
留言簿
(3)
給我留言
查看公開留言
查看私人留言
隨筆分類
(93)
ACM(5)
(rss)
C/C++基礎(20)
(rss)
Linux編程(16)
(rss)
MFC(7)
(rss)
MySQL(2)
(rss)
OPNET仿真(11)
(rss)
PHP(13)
(rss)
Python(3)
(rss)
STL(4)
(rss)
Web技術(2)
(rss)
Windows管理(3)
(rss)
數據結構 / 算法(7)
(rss)
收藏夾
(2)
C/C++基礎(1)
(rss)
數據結構 / 算法(1)
(rss)
搜索
積分與排名
積分 - 331903
排名 - 73
最新評論
1.?re: makefile和make規則
可以評論么
--馮智浩
2.?re: PHP調用外部程序的方法
大的as打算阿達的
--碩大的
3.?re: LIB和DLL的區別與使用
太贊,收藏一下,謝謝
--mymimi1988
4.?re: LIB和DLL的區別與使用
好文,好內容;
--wsdxyz
5.?re: LIB和DLL的區別與使用
寫的非常詳細,感謝。
--Forward
6.?re: LIB和DLL的區別與使用
非常好,說得很詳細,也很明白,學習了!
--xihuwuyu
7.?re: LIB和DLL的區別與使用
感覺很好,對于才接觸dll的我來說很夠用。。
--Chosan
8.?re: VC中ListCtrl經驗總結【轉載】[未登錄]
總結的很好啊,轉了
--king
9.?re: LIB和DLL的區別與使用
就我自己沒看太懂嗎
--AzzStyle
10.?re: LIB和DLL的區別與使用
通俗易懂,呵
--我的
閱讀排行榜
1.?LIB和DLL的區別與使用(76647)
2.?虛擬機VMware tools安裝【轉載】(36601)
3.?Linux串口編程(24921)
4.?tar命令的C參數(18921)
5.?判斷素數的算法(11443)
6.?VC中ListCtrl經驗總結【轉載】(11342)
7.?PHP調用外部程序的方法(11120)
8.?makefile和make規則(9231)
9.?C++進階必讀書籍【轉載】(8449)
10.?insert時出現主鍵沖突的處理方法【轉載】(8264)
Powered by:
博客園
模板提供:
滬江博客
Copyright ©2025 遠風
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
亚洲精品乱码久久久久久日本蜜臀
|
99国内精品久久
|
羞羞视频在线观看欧美
|
久久成人免费视频
|
欧美国产日韩精品免费观看
|
欧美一级久久久
|
欧美激情久久久久
|
亚洲自啪免费
|
欧美成人精品一区
|
国产视频丨精品|在线观看
|
亚洲激情女人
|
久久久久在线观看
|
在线视频精品一区
|
午夜精品久久久久久久蜜桃app
|
欧美黄免费看
|
国产老肥熟一区二区三区
|
亚洲三级性片
|
欧美aa在线视频
|
欧美资源在线观看
|
国产欧美日韩高清
|
久久激情五月婷婷
|
亚洲午夜精品久久久久久浪潮
|
亚洲精品视频一区二区三区
|
欧美电影美腿模特1979在线看
|
91久久中文字幕
|
91久久综合亚洲鲁鲁五月天
|
欧美激情1区2区3区
|
99国产成+人+综合+亚洲欧美
|
亚洲欧洲精品一区二区三区
|
欧美色中文字幕
|
欧美在线电影
|
久久一日本道色综合久久
|
最新国产成人av网站网址麻豆
|
亚洲国产一区二区三区青草影视
|
欧美搞黄网站
|
午夜亚洲性色福利视频
|
欧美在线中文字幕
|
亚洲人精品午夜
|
正在播放日韩
|
黄色成人在线网址
|
亚洲精品国产精品乱码不99按摩
|
欧美视频在线播放
|
久久久久久网址
|
欧美精品激情
|
欧美在线免费观看视频
|
老司机亚洲精品
|
亚洲私人影院
|
久久资源在线
|
亚洲欧美资源在线
|
噜噜噜噜噜久久久久久91
|
亚洲午夜久久久久久久久电影院
|
国产精品一区免费在线观看
|
男人的天堂亚洲
|
欧美日韩直播
|
国产精品视频久久
|
99re6热只有精品免费观看
|
一区二区三区精品国产
|
国语自产精品视频在线看抢先版结局
|
亚洲国产高清在线
|
国产午夜精品麻豆
|
亚洲最黄网站
|
亚洲人人精品
|
久久动漫亚洲
|
欧美一级在线视频
|
欧美日韩精品一区二区三区
|
浪潮色综合久久天堂
|
国产精品剧情在线亚洲
|
亚洲黄色影院
|
亚洲国内精品在线
|
久久精品国产综合
|
亚洲欧洲av一区二区三区久久
|
欧美大片在线看
|
麻豆9191精品国产
|
国产一区二区久久精品
|
亚洲欧美日韩区
|
一二三区精品
|
欧美二区在线播放
|
欧美成人免费全部
|
在线播放中文字幕一区
|
欧美一区二区三区另类
|
亚洲欧美日韩综合国产aⅴ
|
欧美日韩一区综合
|
日韩视频免费看
|
一级成人国产
|
欧美三级乱人伦电影
|
亚洲精品国偷自产在线99热
|
91久久中文
|
欧美激情国产高清
|
亚洲人成人99网站
|
亚洲第一黄色
|
免费精品视频
|
欧美高清在线视频观看不卡
|
伊人久久综合97精品
|
久久久午夜电影
|
久久久99国产精品免费
|
国户精品久久久久久久久久久不卡
|
亚洲综合三区
|
久久免费国产精品
|
亚洲国产精品www
|
欧美freesex交免费视频
|
亚洲国产精品va
|
一本色道久久综合亚洲精品按摩
|
欧美伊人久久久久久久久影院
|
久久精品国产久精国产爱
|
国产综合在线看
|
你懂的视频一区二区
|
亚洲免费大片
|
欧美怡红院视频一区二区三区
|
国产欧美一区二区三区另类精品
|
欧美在现视频
|
欧美国产一区二区在线观看
|
玖玖综合伊人
|
亚洲精品韩国
|
国产精品久久久久久久免费软件
|
欧美亚洲一区二区在线
|
欧美成人三级在线
|
久久成人精品
|
欧美精品一区在线播放
|
在线亚洲国产精品网站
|
国产精品成人一区二区
|
亚洲免费综合
|
欧美顶级大胆免费视频
|
一区二区久久久久
|
国产丝袜一区二区
|
欧美高清成人
|
午夜精品福利视频
|
91久久午夜
|
欧美在线免费视屏
|
最新成人av网站
|
国产片一区二区
|
欧美精品情趣视频
|
先锋影音网一区二区
|
亚洲激情综合
|
久久亚洲精品一区
|
亚洲午夜精品在线
|
亚洲国产日韩一区二区
|
国产精品伊人日日
|
欧美精品免费在线观看
|
午夜欧美大片免费观看
|
亚洲人久久久
|
蜜桃久久av一区
|
欧美一区2区三区4区公司二百
|
亚洲人成77777在线观看网
|
国产欧美一级
|
欧美新色视频
|
欧美黑人在线观看
|
久久天天综合
|
欧美一区二区三区电影在线观看
|
99re66热这里只有精品4
|
欧美电影免费观看高清完整版
|
欧美一级理论片
|
亚洲综合精品
|
一本久道久久综合狠狠爱
|
在线日本高清免费不卡
|
国产欧美一区二区色老头
|
欧美三区在线视频
|
欧美激情综合在线
|
欧美成年人网站
|
免费成人av资源网
|
久久久久久伊人
|
久久久999国产
|
性一交一乱一区二区洋洋av
|
一本色道久久综合亚洲精品小说
|
亚洲理论电影网
|
亚洲黄色成人网
|
亚洲国产精品久久久久
|
亚洲丁香婷深爱综合
|
欧美国产激情二区三区
|
久热精品视频在线免费观看
|
欧美高清视频在线播放
|
麻豆精品在线播放
|
老司机免费视频一区二区
|
久久亚洲春色中文字幕久久久
|
久久黄色小说
|
久久免费高清
|
玖玖玖国产精品
|
欧美www视频在线观看
|
欧美14一18处毛片
|
欧美精品高清视频
|
欧美视频在线观看视频极品
|
欧美日韩在线播放三区
|
欧美午夜精品久久久久久久
|
国产精品久久久久国产精品日日
|
国产精品久久久
|
国产日韩欧美另类
|
狠狠色狠狠色综合系列
|
在线精品视频一区二区
|
亚洲啪啪91
|
亚洲视频一区在线
|
午夜在线电影亚洲一区
|
亚洲国产欧美国产综合一区
|
亚洲小说欧美另类社区
|
亚洲天堂视频在线观看
|
亚洲女女做受ⅹxx高潮
|
欧美亚洲视频
|
男女激情视频一区
|
欧美三级视频在线播放
|
国产欧美日韩精品在线
|
尤物精品在线
|
日韩视频免费
|