Tính liên thông của đồ thị

22 806 0
Tính liên thông của đồ thị

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Tính liên thông của đồ thị

1TTíính liên thông cunh liên thông củûa a đđoồàthò thò DDưương Anh ơng Anh ĐứĐức c ––NhaNhậäp môn Cap môn Cấáu truu trúùc Dc Dưữ liẽ liệäu vau vàøGiaGiảûi thuai thuậätt22TTíính liên thông cunh liên thông củûa a đđoồàthò thò TTíính liên thông cunh liên thông củûa a đđoồàthòthò TTíínhnhsongsongliên thôngliên thông ĐỉĐỉnh khơnh khớùppCaCầàuu 2NhaNhắéc lac lạïi moi mộät sot sốákhakháùi niei niệäm m DDưương Anh ơng Anh ĐứĐức c ––NhaNhậäp môn Cap môn Cấáu truu trúùc Dc Dưữ liẽ liệäu vau vàøGiaGiảûi thuai thuậätt44TTíính liên thông nh liên thông ĐĐoồàthò liên thôngthò liên thông::momộät cat cặëp p đỉđỉnh banh bấát kyt kỳøđưđươợïc noc nốái i vơvớùi nhau bai nhau bằèng ng íít nhat nhấát mot mộät t đưđươờøng ng đđii Đồ thò liên thông Đồ thò không liên thông 3DDưương Anh ơng Anh ĐứĐức c ––NhaNhậäp môn Cap môn Cấáu truu trúùc Dc Dưữ liẽ liệäu vau vàøGiaGiảûi thuai thuậätt55TTíính liên thông nh liên thông ThaThàønh phanh phầàn liên thôngn liên thông::đđoồàthòthòconconliên thông toliên thông tốái i đđaạïi cui củûaaG.G.DDưương Anh ơng Anh ĐứĐức c ––NhaNhậäp môn Cap môn Cấáu truu trúùc Dc Dưữ liẽ liệäu vau vàøGiaGiảûi thuai thuậätt66Quan heQuan hệättưương ơng đưđương ơng MoMộät t quan hequan hệätrên tatrên tậäp hơp hợïppSSlalàøtatậäppRRcacáùc cac cặëp cop cóùththứứttựựcacáùc phac phầàn tn tửửcucủûaaSSđđònh nghònh nghóóa bơa bởûi moi mộät t thuothuộäc tc tíính nanh nàøo o đđoóùVVíídudụï::SS=={ 1, 2, 3, 4 } { 1, 2, 3, 4 } RR=={ (i,j) { (i,j) ∈∈S S ´´SSsao chosao choi < j } i < j } =={(1,2),(1,3),(1,4),(2,3),(2,4),(3,4)} {(1,2),(1,3),(1,4),(2,3),(2,4),(3,4)} 4DDưương Anh ơng Anh ĐứĐức c ––NhaNhậäp môn Cap môn Cấáu truu trúùc Dc Dưữ liẽ liệäu vau vàøGiaGiảûi thuai thuậätt77Quan heQuan hệättưương ơng đưđương ơng MoMộät t quan hequan hệättưương ơng đưđương ơng lalàøquan hequan hệävơvớùi cai cáùc c thuothuộäc tc tíính saunh sau::TTíính phanh phảûn xan xạï: (x,x) : (x,x) ∈∈RR, , ∀ ∀ x x ∈∈SS(reflexiv(reflexive)e)TTíính nh đđoốái xi xứứngng:(x,y) :(x,y) ∈∈R R ⇒⇒(y,x) (y,x) ∈∈R R (symmetri(symmetric)c)TTíính banh bắéc cac cầàu u :(x,y), (y,z) :(x,y), (y,z) ∈∈RR⇒⇒(x,z) (x,z) ∈∈R R (transitiv(transitive)e)DDưương Anh ơng Anh ĐứĐức c ––NhaNhậäp môn Cap môn Cấáu truu trúùc Dc Dưữ liẽ liệäu vau vàøGiaGiảûi thuai thuậätt88Quan heQuan hệättưương ơng đưđương ơng Quan heQuan hệäCCtrên tatrên tậäp cap cáùc c đỉđỉnh cunh củûa a đđoồàthòthò::(u,v) (u,v) ỴỴC C ÛÛuuvavàøvvthuothuộäc cuc cùøng mong mộät that thàønh phanh phầàn n liên thông liên thông lalàøquan hequan hệättưương ơng đưđươngơng 5DFSDFStrên trên đđoồàthò thò không liên thôngkhông liên thôngDDưương Anh ơng Anh ĐứĐức c ––NhaNhậäp môn Cap môn Cấáu truu trúùc Dc Dưữ liẽ liệäu vau vàøGiaGiảûi thuai thuậätt1010DFSDFStrên trên đđoồàthò không liên thôngthò không liên thông 6DDưương Anh ơng Anh ĐứĐức c ––NhaNhậäp môn Cap môn Cấáu truu trúùc Dc Dưữ liẽ liệäu vau vàøGiaGiảûi thuai thuậätt1111DFSDFStrên trên đđoồàthò không liên thôngthò không liên thôngSau khi thực hiện DFS(1):k 1 2 3 4 5 6 7val[k] 1 4 0 2 0 0 3DDưương Anh ơng Anh ĐứĐức c ––NhaNhậäp môn Cap môn Cấáu truu trúùc Dc Dưữ liẽ liệäu vau vàøGiaGiảûi thuai thuậätt1212DFSDFStrên trên đđoồàthò không liên thôngthò không liên thôngHaHàøm m đđeệäqui qui DFSDFSthăm tathăm tấát cat cảûcacáùc c đỉđỉnh thuonh thuộäc c thathàønh phanh phầàn liên thôngn liên thông CaCầàn thêm van thêm vàøo moo mộät vot vòøng lang lặëppforforđđeểåthăm tathăm tấát cat cảûcacáùc c đỉđỉnh cunh củûa a đđoồàthòthò::for for k = 1 to Nk = 1 to Ndodoif if ((valval[k] = 0)[k] = 0)thenthendfsdfs(k)(k) 7DDưương Anh ơng Anh ĐứĐức c ––NhaNhậäp môn Cap môn Cấáu truu trúùc Dc Dưữ liẽ liệäu vau vàøGiaGiảûi thuai thuậätt1313DFSDFStrên trên đđoồàthò không liên thôngthò không liên thôngCaCáùch biech biểåu diễn cau diễn cáùc thac thàønh phanh phầàn liên thôngn liên thông::DuDùøng mang mảûngngComp[1 N]Comp[1 N]đđeểåbiebiểåu dieu diểånn::Comp[k] = iComp[k] = inenếáu u đỉđỉnhnhk k ∈∈thathàønh phanh phầàn liên n liên thôngthôngiiDDưương Anh ơng Anh ĐứĐức c ––NhaNhậäp môn Cap môn Cấáu truu trúùc Dc Dưữ liẽ liệäu vau vàøGiaGiảûi thuai thuậätt1414DFSDFStrên trên đđoồàthò không liên thôngthò không liên thôngSau khi thSau khi thựực hiec hiệännDFS(1)DFS(1)::k 1 2 3 4 5 6 7 8k 1 2 3 4 5 6 7 8valval[k] [k] 1 1 1 1 2 2 3 3 2 2 3 3 2 2 11 8DDưương Anh ơng Anh ĐứĐức c ––NhaNhậäp môn Cap môn Cấáu truu trúùc Dc Dưữ liẽ liệäu vau vàøGiaGiảûi thuai thuậätt1515ThuaThuậät toat toáùnnDFSDFSxaxáùc c đđònh cnh cáùc c thathàønh phanh phầàn liên thôngn liên thôngAlgorithm DFS(v, id)Input: Một đỉnh v của đồ thò, chỉsố id của tpltOutput: Gán nhãn id cho tất cảcác đỉnh của tpltComp[v] =id;for (mọi đỉnh k kề với v) doif Comp[k]= 0 thenGọi đệ qui DFS(k, id);Algorithm DFS(v, id)Algorithm DFS(v, id)Input:Input:MoMộät t đỉđỉnhnhvvcucủûa a đđoồàthòthò,,chchỉỉsosốáididcucủûa tplta tpltOutput:Output:GaGáùn nhãnn nhãnididcho tacho tấát cat cảûcacáùc c đỉđỉnh cunh củûa tplta tpltComp[v]Comp[v]=id;=id;forfor((momọïi i đỉđỉnhnhkkkekềàvơvớùiiv)v)dodoififComp[k]= 0 Comp[k]= 0 thenthenGoGọïi i đđeệäqui qui DFS(k, id);DFS(k, id);DDưương Anh ơng Anh ĐứĐức c ––NhaNhậäp môn Cap môn Cấáu truu trúùc Dc Dưữ liẽ liệäu vau vàøGiaGiảûi thuai thuậätt1616ThuaThuậät toat toáùnnDFSDFSxaxáùc c đđònh cnh cáùc c thathàønh phanh phầàn liên thôngn liên thôngAlgorithmAlgorithmThanhPhanLTThanhPhanLTInput:Input:ĐĐoồàthòthòGGOutput:Output:MaMảûngngCompCompcho biecho biếát cat cáùc tpltc tpltidid= 0;= 0;for for k = 1 to Nk = 1 to NdodoComp[k] = 0;Comp[k] = 0;for for k = 1 to Nk = 1 to Ndodoif if (Comp[k] = 0)(Comp[k] = 0)thenthenid++;id++;DFS(k, id);DFS(k, id); 9TTíínhnhsongsongliên thôngliên thông DDưương Anh ơng Anh ĐứĐức c ––NhaNhậäp môn Cap môn Cấáu truu trúùc Dc Dưữ liẽ liệäu vau vàøGiaGiảûi thuai thuậätt1818CaCáùc c đỉđỉnh khơnh khớùp p ĐỉĐỉnh khơnh khớùpp((cutvertexcutvertex))lalàøđỉđỉnh nenh nếáu khi huyu khi huỷûnonóùra khora khỏûi i đđoồàthò sẽ lathò sẽ làøm tăng som tăng sốáthathàønh phanh phầàn liên n liên thông cuthông củûa a đđoồàthòthòNeNếáuuGGliên thôngliên thông, w, wlalàøđỉđỉnh khơnh khớùp cup củûaaGGththììsau sau khi huykhi huỷûw, Gw, Gkhông cokhông còøn liên thôngn liên thông 10DDưương Anh ơng Anh ĐứĐức c ––NhaNhậäp môn Cap môn Cấáu truu trúùc Dc Dưữ liẽ liệäu vau vàøGiaGiảûi thuai thuậätt1919CaCáùc c đỉđỉnh khơnh khớùp p VVíídudụï, ORD, ORDvavàøDENDENlalàøcacáùc c đỉđỉnh khơnh khớùpp, MSD, MSDkhông phakhông phảûii DDưương Anh ơng Anh ĐứĐức c ––NhaNhậäp môn Cap môn Cấáu truu trúùc Dc Dưữ liẽ liệäu vau vàøGiaGiảûi thuai thuậätt2020CaCáùc c đỉđỉnh khơnh khớùp p NeNếáu sânu sânbay DEN (Denver)bay DEN (Denver)bò bò đđoóùng cng cửửaa,,cacáùc c tuyetuyếánnbaybaynonốái miei miềàn n đđông vaông vàømiemiềàn tâyn tâyUSAUSAsẽ bò sẽ bò giagiáùn n đđoaoạïnn,,nenếáu sânu sânbay ORD (Chicago) bay ORD (Chicago) bò bò đđoóùng ng ccửửaa,,ta không theta không thểåđđi ti từừProvidence (PVD)Providence (PVD)đđeếánnDenver Denver [...]... va ø ø Gia Gia û û i thua i thua ä ä t t 4 4 T T í í nh liên thông nh liên thông   Đ Đ o o à à thị liên thông thị liên thông : : mo mo ä ä t ca t ca ë ë p p đỉ đỉ nh ba nh ba á á t ky t ky ø ø đư đư ơ ơ ï ï c no c no á á i i vơ vơ ù ù i nhau ba i nhau ba è è ng ng í í t nha t nha á á t mo t mo ä ä t t đư đư ơ ơ ø ø ng ng đ đ i i . . Đồ thị liên thông Đồ thị không liên thông 16 D D ư ư ơng Anh ơng Anh Đứ Đứ c... pha nh pha à à n n song song liên thông liên thông   Tha Tha ø ø nh pha nh pha à à n n song song liên thông liên thông : : đ đ o o à à thị thị con song con song liên liên thông to thông to á á i i đ đ a a ï ï i cu i cu û û a a G. G.   Ma Ma á á u cho u cho á á t cu t cu û û a vie a vie ä ä c xa c xa ù ù c c đ đ ịnh t ịnh t í í nh nh song song liên thông liên thông cũng nh cũng nh ư ư ca ca ù ù c... Brute-Force {tìm đỉnh khớp} Input: Đồ thị liên thông G Output: Danh sách L các đỉnh khớp L = ∅; for (mọi đỉnh k của G) do Huỷ k ra khỏi G; Kiểm tra tính liên thông của G; Nếu G không liên thông L = L +[k]; Đặt k vào lại G; Algorithm Brute Algorithm Brute - - Force Force { { t t ì ì m m đỉ đỉ nh khơ nh khơ ù ù p p } } Input: Input: Đ Đ o o à à thị liên thông thị liên thông G G Output: Output: Danh sa Danh... kho ra kho û û i i đ đ o o à à thị sẽ la thị sẽ la ø ø m tăng so m tăng so á á tha tha ø ø nh pha nh pha à à n liên n liên thông cu thông cu û û a a đ đ o o à à thị thị   Ne Ne á á u u G G liên thông liên thông , w , w la la ø ø đỉ đỉ nh khơ nh khơ ù ù p cu p cu û û a a G G th th ì ì sau sau khi huy khi huy û û w, G w, G không co không co ø ø n liên thông n liên thông . . 12 D D ư ư ơng Anh... khớp} Input: Đồ thị liên thông G Output: Danh sách L các đỉnh khớp L = ∅; Thực hiện DFS trên đồ thị G Kiểm tra nếu root của cây DFS có ít nhất 2 con (thoả mãn thuộc tính 1) thì L = L +[root] Với mỗi đỉnh v, kiểm tra nếu có cạnh (v, w) của cây DFS thoả Min(w) ≥ val[v]thì L = L +[v] Algorithm DFS Algorithm DFS { { t t ì ì m m đỉ đỉ nh khơ nh khơ ù ù p p } } Input: Input: Đ Đ o o à à thị liên thông thị liên thông G G Output: Output: Danh... môn Ca á á u tru u tru ù ù c D c D ư ư õ lie õ lie ä ä u va u va ø ø Gia Gia û û i thua i thua ä ä t t 24 24 Đ Đ o o à à thị thị song song liên thông liên thông   Ta qui Ta qui ư ư ơ ơ ù ù c c , , đ đ o o à à thị thị K K 2 2 la la ø ø đ đ o o à à thị thị song song liên thông liên thông , , ma ma ë ë c du c du ø ø no no ù ù không thoa không thoa û û hai t hai t í í nh cha nh cha á á t trên t trên ... đ đ o o à à thị không liên thông thị không liên thông   Ca Ca ù ù ch bie ch bie å å u diễn ca u diễn ca ù ù c tha c tha ø ø nh pha nh pha à à n liên thông n liên thông : :   Du Du ø ø ng ma ng ma û û ng ng Comp[1 N] Comp[1 N] đ đ e e å å bie bie å å u die u die å å n n : :   Comp[k] = i Comp[k] = i ne ne á á u u đỉ đỉ nh nh k k ∈ ∈ tha tha ø ø nh pha nh pha à à n liên n liên thông thông i i D D ư ư ơng... môn Ca á á u tru u tru ù ù c D c D ö ö õ lie õ lie ä ä u va u va ø ø Gia Gia û û i thua i thua ä ä t t 23 23 Đ Đ o o à à thị thị song song liên thông liên thông   Mo Mo ä ä t so t so á á t t í í nh cha nh cha á á t cu t cu û û a a đ đ o o à à thị thị song song liên thông liên thông : :   Co Co ù ù í í t nha t nha á á t hai t hai đư đư ơ ơ ø ø ng ng đ đ i kha i kha ù ù c nhau gi c nhau gi ư ư õa...   Ca Ca ù ù c tha c tha ø ø nh pha nh pha à à n n song song liên thông cu liên thông cu û û a mo a mo ä ä t t đ đ o o à à thị thị không co không co ù ù ca ca ï ï nh chung nh nh chung nh ư ư ng mo ng mo ä ä t t đỉ đỉ nh co nh co ù ù the the å å thuo thuo ä ä c nhie c nhie à à u tha u tha ø ø nh pha nh pha à à n n song song liên thông liên thông ( ( v v í í du du ï ï DEN, ORD). DEN, ORD). Nh Nh ư ư õng... ∅ ∅ ; ; for for ( ( mo mo ï ï i i đỉ đỉ nh nh k k cu cu û û a a G G ) ) do do Huy Huy û û k k ra kho ra kho û û i i G; G; Kie Kie å å m tra t m tra t í í nh liên thông cu nh liên thông cu û û a a G G ; ; Ne Ne á á u u G G không liên thông không liên thông L = L +[k]; L = L +[k]; Đ Đ a a ë ë t t k k va va ø ø o la o la ï ï i i G; G; D D ư ư ơng Anh ơng Anh Đứ Đứ c c – – Nha Nha ä ä p môn Ca p môn Ca á á u . thuậätt22TTíính liên thông cunh liên thông củûa a đđoồàthò thò TTíính liên thông cunh liên thông củûa a đđoồàthòthò..TTíínhnhsongsongliên thôngliên thông. .ĐỉĐỉnh. thuai thuậätt55TTíính liên thông nh liên thông ThaThàønh phanh phầàn liên thôngn liên thông: :đđoồàthòthòconconliên thông toliên thông tốái i đđaạïi cui

Ngày đăng: 06/09/2012, 14:52

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan