版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、通過搜索若干圖論算法、劉汝佳、目錄、DFS相關算法二進制圖相關算法聯(lián)網流相關算法最小問題樹、DFS相關算法、基本應用、連通分量二進制圖來確定無方向性圖的連接性,時間斯坦共和國和邊緣分類,時間初始化為0,并且最大值為2|E|。 數(shù)值本身沒有意義,但大小關系是有意義的,voidprevisit (intu ) preu=DFS _ clock; 視頻投影機=DFS _時鐘。 無向圖:只有與樹邊相反的邊,無向連通圖的割頂,DFS森林必定只有一棵樹。 樹根是從山頂上砍下來的嗎? 只有當有兩個以上的兒子時,才能看出只切割樹邊的相反一側的邊,不存在跨越兩個子樹的邊。 在其他方面,情況會有些復雜。 我們有以
2、下定理:定理:在無向連通圖g的DFS樹中,非根結點u是g的分配頂點,并且在u中只有一個兒子w,因此,w及其子孫都是逆邊不返回u的祖先(不返回u )。 根據(jù)定理的證明,u中有一個兒子w,w及其所有后代的相反邊不會返回u的祖先(不返回u )。 為了方便起見,若將low(u )設為u及其后代能夠連續(xù)的最早的祖先的pre值,則定理的條件能夠簡記為以low(w)=pre(u )的方式在節(jié)點u存在兒子w。 如果low(w)pre(u ),即w最多只能與自各兒聯(lián)系,則只能刪除(u,w )一邊而使圖g非連通。 滿足該條件的邊稱為橋接器(bridge ),low函數(shù)自身的修正算法是將void dfs(int u
3、,int fa) /u的母節(jié)點作為fa,首次調用fa=-1lowu=preu=dfs_初始化low (u ) int d=gu for (英寸=0; i d; 列舉出i ) /各邊(u,w) int w=Gui。 國際貨幣基金組織未網站數(shù)據(jù)庫到prew) /點v的0) dfs(w,u ) (所有pre值都被初始化為0 ); /w的父親節(jié)點是u lowu=min (低,低); /使用后代的low函數(shù)更新else if(w! 最小(最小,最前); /在反方向的邊更新,雙連通和邊-雙連通,如果一個無方向連通圖沒有切斷,那么稱為點-雙連通,一般簡稱為雙連通(biconnected ),如果沒有橋,那么
4、稱為邊-雙連通(edge-biconnected )。 點-雙連通的等效條件:任意兩點上存在兩條“點不重疊”路徑。 這個要求,因為兩邊都在同一個單純的環(huán)上,所以相當于內部沒有分割頂點。 邊-雙連通的等效條件:在任意兩點存在兩條“邊不重疊”路徑。 并非所有邊都是橋,因為此要求稍低,每條邊必須在至少一個簡單環(huán)中。 點/邊-二重連通成分,下圖中有兩個點-二重連通成分: 1、2、3和3、4、5,但只有一個邊-二重連通成分: 1、2、3、4、5。 算法,邊-二重連成分:走兩步,求所有的橋,然后再進行dfs染色。 由于邊緣-雙連通成分沒有共同的頂點,只要保證在第2次dfs時不通過橋接即可。 點-雙連通分量
5、:天津校正算法(參照后述)、void DFS (入口、出口) lowu=preu=DFS _ clock; int d=Gu.size (); for (英寸=0; i=preu) /u是分割頂點或根,意味著一個bcc的結束bcc_cnt。 打印機(bcc % d、連接(% d、%d):n、bcc_cnt、u、w ); 派爾e; do e=S.top (); S.pop (); 打印(% d % dn、首次打印、秒); 威爾!=mp(u,w ); 魔法少女最小(最小,最前); 有有向圖的強連通分量,理想的是從I、c、d依次從DFS出發(fā),則對每個DFS恰好獲得一個SCC、Kosaraju算法,執(zhí)
6、行兩次DFS,其中的第一次DFS獲得關于各SCC的拓撲分析順序的信息,而第二次DFS獲得關于該拓撲分析順序的、 步驟2 :校正g的轉置GT (即,將所有的有向邊(u,v )改變?yōu)橛邢蜻?v,u ) )步驟3 :對GT執(zhí)行DFS,并且若在主循環(huán)中以從小到大的順序考慮列表中的每個節(jié)點,則針對每個DFS獲得不同的sfs修訂多少騎士不能參加任何會議。 有n個騎士,m個相互憎恨的騎士對N=1000,m=100000,以騎士為頂點制作無向圖g。 如果兩個騎士不互相憎恨的話,他們之間就會有無向邊。 問題是求出哪個奇圈都沒有的頂點的個數(shù)。 如果圖g不連通,就應該對每個連通分量分別求解。 在下文中,假設圖g是連
7、通的。 假定節(jié)點v在一個奇數(shù)環(huán)上,定義使得該環(huán)上的所有節(jié)點屬于相同的點-雙連通分量。 因為這個雙重連通成分包含奇圈,所以不一定是二分圖。 相反地成立了嗎? 即,如果結點v所屬的某個雙連通成分b (由于v有可能屬于多個雙連通成分)不是二分圖,則v必然屬于一個奇圈嗎?問題是,表示盡管b不是二分圖,但必然包含奇圈c,該c中可能不包含v 我們必須想辦法混合v。 如圖所示,根據(jù)連通性,從v必須能夠到達c中的某個結點u1。 根據(jù)雙重連通性,在c中存在另一個結點u2,從v開始有2個非交叉路徑(除起點以外沒有共同結點),分別到達u1和u2。 在c中,u-1到u-2的兩條路線的長度都是奇偶,因此可以構造總是穿過
8、v的奇圈。 主算法:對于各連通成分的各二重連通成分b,如果不是二分圖,則在b內的所有結點上標記為“奇圈上”。 供水井下的礦工,地下的稀有金屬礦由n條隧道和幾個連接點構成,每條隧道連接兩個連接點。 任意兩個連接點之間最多只有一條隧道。 為了減少礦工的危險,你的任務是在一些連接點上安裝太平供水井和相應的逃生裝置,以便無論哪個連接點倒塌,不在這個連接點上的所有礦工都能到達太平供水井并逃生。為了節(jié)約成本,盡可能在連接點上挖太平井太平井數(shù)量最少時的設置方案總數(shù)也有必要進行訂正。 本問題的模型是,在無向圖上選擇盡可能少的點進行涂黑(對應太平井),任意地去除點之后,使每個連通成分至少有一個黑點。 可以看出,
9、將切削掌門人涂黑不花費成本,同一點-雙重連通成分中圖的兩個黑點也不花費成本。 進一步分析可知,如果將各點-雙重連通成分收縮為一個點,圖整體就會變成一棵樹。 最好的方案是,對每個樹的葉結點選擇一個非割頂進行涂黑,云同步地解決兩個問題。 一個特殊的情況是整個圖沒有斷開。 此時,必須涂抹至少兩個點,計劃總數(shù)為C(V,2 ),其中v是連接點的數(shù)量。 在等價性證明、數(shù)學中,我們常常需要完成一些命題的等價性證明。 例如,命題a,b,c,d有4個,證明ab,還有bc,最后的cd。注意每次的證明是雙向的,總共完成了6次的導出。 另一種方法是證明ab、bc、cd和最后的da,僅需4次。 現(xiàn)在,你的任務是證明n個
10、命題都是等價的。 并且,你的小伙伴已經為你做了m次推導(知道每次推導的內容)。 你必須至少進行幾次導出才能完成整個證明嗎n=20000,m=50000,用分析、圖論用語來說,本問題是給出n個節(jié)點的m條邊的有向圖,盡量填充少的邊,使新的格拉夫強連通。 首先找到強連通成分,將各個強連通成分縮小為一個點,得到一個DAG,接著如果a個結點(別忘了,這里的各結點對應于原圖的一個強連通成分)的入度為0,b個結點的出度為0,則maxa,b為答案。 注意特殊情況:原圖緊密連接時,答案不是1而是0。 證明留給讀者。 無向仙人掌、仙人掌各點定義為最多1個簡單(結點不重復)電路上的連通無向圖。 你的任務是訂正無向圖
11、的“仙人掌度”。 也就是說,它有多少生成子格拉夫(包括它自己)都是仙人掌的。 如果原圖不是仙人掌,輸出0、采用分析DFS樹的方法求出問題解決的方法。首先,對于一個節(jié)點u,如果DFS樹上的某小盆友v滿足low(v) 1,則該圖必然輸出0而不是仙人掌。 對于仙人掌,只需修正仙人掌度即可嗎?很明顯,對于不屬于任何環(huán)的邊,無法刪除,但對于長度為l的環(huán),有L 1種選擇(保留或刪除其中的任意一條邊)。 根據(jù)乘法原理,答案是所有環(huán)長度加1相乘的結果。 所有算法的時間復雜度都是O(m ),因為所有的工作都可以在一個DFS內完成。 為具體實現(xiàn),需要留心不需要遞歸地修正答案以避免棧內存的向上溢出。 一個好方法是遞
12、歸地只記錄每個環(huán)的長度,等所有處理完成后再進行高精度的修正運算。 二叉圖最大匹配,二叉圖最大匹配,二叉圖:節(jié)點可分為兩個部分x和y,各部分無內部邊緣連續(xù)匹配:沒有共同點的邊集合未復蓋點:不與任何匹配邊相鄰的點最大匹配:邊數(shù)最多的匹配、和如果最終將穿過一個非匹配邊到達另一個非匹配點的非匹配邊的數(shù)量大于匹配邊的數(shù)量的匹配邊與非匹配邊進行交換,則該匹配是合法的,但如果給基數(shù)加1,則可以使用、 匹配是最大匹配,m不是最大匹配,取最大匹配m,取m和m的對稱差g,g在m中的邊應該比m中多。 g有三個可能的連通分支孤立點。 因為m的擴展電路存在(如果存在)并與m最大匹配不符點,所以存在m的擴展電路,并且Ha
13、ll定理在二叉圖(x,y,e )中對于x的任何子定徑套a存在完全匹配(x的節(jié)點全部匹配)的滿足條件: 如果不是始終需要的空,則各個節(jié)點是吸收點的(否則有擴展路徑) .尋找以x0為端點的m相關的所有交織路徑,設y節(jié)點的集合為y,x節(jié)點的集合為x,則y節(jié)點與X-x0的節(jié)點一一對應,因此|X|Y| 假定A=X,并且不是來自固定的未復蓋點的樹Edmonds-Karp算法:對所有的未復蓋點進行排隊,而是BFS搜索/擴展路由時間都是o (m ) -最大O(n )次時間復雜度O(nm ) Hopcroft算法:每次沿多個放大電路向云同步放大,每次搜索多個節(jié)點不交叉的最短放大電路時的最短放大電路定徑套極大,基
14、于時間復雜度DFS,算法:一次選擇一個未蓋點u進行DFS的Hopcroft算法, 如果每次發(fā)現(xiàn)的最短擴大路集是極大的,則可以證明只要擴大下一個密鑰即可:在O(m )時間中找到極大最短擴大路集的步驟1 :在距離標簽條中擴大匈牙利樹,找到第一個未蓋點時不停這樣,找到的所有未蓋點距離標簽條都是相同的步驟2 :每次取得任一未蓋點時,在DFS中找到到起點的擴展路徑(僅距離標簽條下降的方向),標記通過點,找到所有擴展路徑的總時間為O(m ),基于DFS的算法, 每次定理:從貪婪匹配(而不是空匹配)假定g的匹配為m,不存在來自非吸收點u的擴大后的電路,并且如果存在另一個擴大后的電路p,那么g也不存在來自u的
15、關于擴大后的新匹配的擴大后的電路,并且定理3360將g的匹配假定為m 假設不存在來自非吸收點u的放大電路,存在的g也從u開始與放大后的新匹配m相關的放大電路證明:放大后從u開始存在放大電路q,如果q和p不相交,則q在M-放大電路中不符點q的兩個M-非吸收點從u,v .從u開始沿著q行走,設第一個p中結點為w,w將p分成兩個,其中一個在m中邊與w相關,得到從u開始擴展的路、w、v0、_0。 匹配邊緣中權重最大的邊緣權重最小算法1:2分最大邊緣權重,去除不滿足條件的邊緣,最大匹配算法2 :從權重最低的邊緣開始,一次添加一個邊緣,保持交錯樹的森林。 您最多可以添加一個聯(lián)蕾絲花邊。 只要找到n條交織軌道即可,但因為維持交織樹森林的平房復雜度為O(1),所以總時間復雜度依然為O(N3),進行分析,如果有完美的匹配,則Alice失敗。 因為Bob只需沿匹配的邊緣行進,所以Alice獲勝:任意確定最大匹配,Alice Alice只需要沿著匹配的邊緣移動,下一個Bob只需要它移動到另一個復蓋點,而Alice就可以移動到它。 應用實例:機器調度,有兩臺機器a、b和n個應執(zhí)行的塔斯克。 每臺機器有m種不同的模式,每臺塔斯克I正好在一臺
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 餐館類工業(yè)工程課程設計
- 鐵藝座椅課程設計
- 風力發(fā)電 課程設計
- 線上嵌入式培訓課程設計
- 長句變短句課程設計
- 運輸包裝課程設計化妝品
- 貴州概預算課程設計
- 采購商務課程設計
- 跪跳起課程設計
- 美的培訓課程設計
- 果樹蔬菜病害:第一章 蔬菜害蟲
- 質量管理體系部門職責與權限
- 2020高考語文大一輪復習高考命題點六客觀綜合性選擇題——內容形式兩方面選項陷阱角度現(xiàn)課件(31頁PPT)
- 人工地震動生成程序
- 超星 爾雅 中國古典小說巔峰-四大名著鑒賞
- 挖掘機專業(yè)詞語中英對照表2014-12-04
- 中考必備高頻詞匯2600詞(單詞版)
- SSB變槳系統(tǒng)的基礎知識
- GB∕T 27552-2021 金屬材料焊縫破壞性試驗 焊接接頭顯微硬度試驗
- 外貿中常見付款方式的英文表達及簡要說明
- 抗壓偏壓混凝土柱承載力計算表格
評論
0/150
提交評論