版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、第7章圖的結(jié)構(gòu)分析與應(yīng)用 學(xué)習(xí)目標(biāo) 了解圖的定義及基本術(shù)語(yǔ)。 熟練掌握?qǐng)D的鄰接矩陣和鄰接鏈表存儲(chǔ)方法。 熟練掌握?qǐng)D的深度優(yōu)先和廣度優(yōu)先遍歷。 熟練掌握最小生成樹實(shí)現(xiàn)方法:普里姆算法(Prim)和克 魯斯卡爾(Kruskal)算法。 掌握求單源最短路徑的迪杰斯特拉(Dijkstra)算法,了解 求每對(duì)頂點(diǎn)間最短路徑的弗洛伊德(Floyd)算法。7.1圖的概念及相關(guān)術(shù)語(yǔ) 一、圖的概念 1、圖的定義:記為G=(V,E),其中V是頂點(diǎn)的有窮非空集 合,E是邊的有窮集合。 2、無向圖的定義:每條邊都是沒有方向的圖。 3、有向圖的定義:每條邊都是有方向的圖。7.1圖的概念及相關(guān)術(shù)語(yǔ) 二、圖的相關(guān)術(shù)語(yǔ) 1、
2、無向完全圖的定義 :無向圖中任意兩個(gè)頂點(diǎn)之間均有邊 相連接 。n個(gè)頂點(diǎn)的無向完全圖中有n(n-1)/2條邊。 2、有向完全圖的定義:有向圖中任意兩個(gè)頂點(diǎn)之間均有方 向互為相反兩條邊相連接 。有向完全圖中有n(n-1)條邊。 3、無向圖中度的定義:與該頂點(diǎn)相關(guān)聯(lián)的邊的數(shù)目 。 4、有向圖中度的定義:出度是以該頂點(diǎn)為始點(diǎn)的邊的數(shù)目, 入度是以該頂點(diǎn)為終點(diǎn)的邊的數(shù)目。頂點(diǎn)1的度為2頂點(diǎn)1的出度為2頂點(diǎn)1的入度為17.1圖的概念及相關(guān)術(shù)語(yǔ) 二、圖的相關(guān)術(shù)語(yǔ) 4、子圖的定義 :若圖G=(V,E),G=(V,E),若V是 V的子集,E是E的子集,則稱圖G是G的一個(gè)子圖。 子圖子圖7.1圖的概念及相關(guān)術(shù)語(yǔ)
3、二、圖的相關(guān)術(shù)語(yǔ) 5、路徑、簡(jiǎn)單路徑和回路 路徑的定義:在無向圖中,若頂點(diǎn)Vp到頂點(diǎn)Vq存在一個(gè)頂 點(diǎn)序列Vp,V1,V2,Vi,Vq,使得Vp和頂點(diǎn)Vq相通。路徑1、3、2、4 簡(jiǎn)單路徑的定義:若Vp到Vq存在一條路徑,除了Vp和Vq可 以相同外,其余頂點(diǎn)均不相同,此路徑為一條簡(jiǎn)單路徑。簡(jiǎn)單路徑 簡(jiǎn)單回路或簡(jiǎn)單環(huán)的定義:起點(diǎn)與終點(diǎn)相同的簡(jiǎn)單路徑。簡(jiǎn)單環(huán)7.1圖的概念及相關(guān)術(shù)語(yǔ) 二、圖的相關(guān)術(shù)語(yǔ) 6、連通、連通圖、連通分量 連通的定義:若從一個(gè)頂點(diǎn)到另一個(gè)頂點(diǎn)互有路徑。 連通圖的定義:無向圖中任意兩頂點(diǎn)連通。 連通分量的定義:無向圖的極大連通子圖。頂點(diǎn)1和4連通頂點(diǎn)2和6非連通此圖為非連通圖連
4、通分量注:連通圖的連通分量就是本身。7.1圖的概念及相關(guān)術(shù)語(yǔ) 二、圖的相關(guān)術(shù)語(yǔ) 7、強(qiáng)連通圖和強(qiáng)連通分量 強(qiáng)連通圖的定義:在有向圖中任意兩個(gè)的頂點(diǎn)都連通 。 強(qiáng)連通分量的定義:有向圖的極大連通子圖。頂點(diǎn)2和1非連通頂點(diǎn)2和3非連通此圖為非強(qiáng)連通圖強(qiáng)連通分量注:強(qiáng)連通圖的強(qiáng)連通分量就是本身。7.2圖的存儲(chǔ)結(jié)構(gòu) 一、鄰接矩陣表示法 1、鄰接矩陣是表示頂點(diǎn)之間相鄰關(guān)系的矩陣(二維數(shù)組)。鄰接矩陣鄰接矩陣V0V1V2V30110101111010110對(duì)稱矩陣7.2圖的存儲(chǔ)結(jié)構(gòu) 一、鄰接矩陣表示法 2、頂點(diǎn)存儲(chǔ):需要一個(gè)一維數(shù)組來完成。 3、圖的類型定義typedef struct char vexs
5、Num;/ vexs用于存放頂點(diǎn)信息 int edgesNumNum;/鄰接矩陣,edges存儲(chǔ)邊信息 int n,e;/分別代表圖的頂點(diǎn)數(shù)和邊數(shù) MGraph;/結(jié)構(gòu)體類型無向圖的鄰接矩陣建立算法源程序鏈接7.2圖的存儲(chǔ)結(jié)構(gòu) 二、鄰接表表示法 1、鄰接表表示法類似與樹的孩子鏈表表示法。 2、鄰接表的結(jié)點(diǎn)結(jié)構(gòu)和數(shù)組的結(jié)點(diǎn)結(jié)構(gòu)。adjvexnextvertexlink 鄰接表的結(jié)點(diǎn)結(jié)構(gòu) 數(shù)組的結(jié)點(diǎn)結(jié)構(gòu) 鄰接表無向圖的鄰接表建立算法源程序鏈接7.3圖的遍歷 一、深度優(yōu)先遍歷 1、實(shí)例描述:選擇從淮安出發(fā),然后青島、煙臺(tái)、大連、西安、開封、上海、蘇州和揚(yáng)州旅游路線,每一條路線盡量延伸到所有城市。首先
6、將出發(fā)點(diǎn)V標(biāo)記為已訪問過,然后依次從V出發(fā)搜索 V的某個(gè)鄰接點(diǎn)W,若W未曾訪問過,則以W為新的出發(fā) 點(diǎn)繼續(xù)進(jìn)行深度優(yōu)先遍歷,直至圖中所有和源點(diǎn)V有路徑 相通的頂點(diǎn)均被訪問為止。7.3圖的遍歷 一、深度優(yōu)先遍歷 2、深度優(yōu)先遍歷過程V1V2V3V6V5V0V4V7V8回溯假設(shè)圖G的初始狀態(tài)是所有頂點(diǎn)均未曾訪問過,在G中 任選一頂點(diǎn)為出發(fā)點(diǎn)(源點(diǎn))。遍歷結(jié)果: V0,V1,V2,V3,V6,V4,V7,V8,V5注:遍歷結(jié)果不唯一深度優(yōu)先遍歷算法源程序鏈接7.3圖的遍歷 二、廣度優(yōu)先遍歷 1、實(shí)例描述:選擇從淮安出發(fā), 然后青島、開封、揚(yáng)州、上海、煙臺(tái)、西安、蘇州和大連旅游路線,盡量先旅游附近的城
7、市,然后逐漸擴(kuò)大范圍。首先將出發(fā)點(diǎn)V標(biāo)記為已訪問過,然后依次從V出發(fā)搜索 V的每個(gè)鄰接點(diǎn)W1,W2,Wn,再依次訪問與W1, W2,Wn鄰接的所有未曾訪問過的頂點(diǎn),至圖中所 有和源點(diǎn)V有路徑相通的頂點(diǎn)都已訪問到為止。7.3圖的遍歷 二、廣度優(yōu)先遍歷 2、廣度優(yōu)先遍歷過程V1V2V3V6V5V0V4V7V8假設(shè)圖G的初始狀態(tài)是所有頂點(diǎn)均未曾訪問過,在G中 任選一頂點(diǎn)為出發(fā)點(diǎn)(源點(diǎn))。遍歷結(jié)果: V0,V1, V3, V4, V5, V2,V6,V7,V8注:遍歷結(jié)果不唯一廣度優(yōu)先遍歷算法源程序鏈接7.4最小生成樹 一、相關(guān)概念 1、生成樹的定義:連通圖G的一個(gè)子圖如果是一棵包含G 的所有頂點(diǎn)的樹
8、。 2、樹的權(quán)的定義:生成樹各邊的權(quán)值總和。 3、最小生成樹的定義:權(quán)最小的生成樹,可簡(jiǎn)記為MST。 舉例:圖G的頂點(diǎn)表示城市,邊表示連接兩個(gè)城市之間的公路,假設(shè)城市之間沒有修建任何公路,那么為了把n個(gè)城市連接起來,最多可修建n(n-1)/2條公路,最少可修建n-1條公路,則圖G的生成樹表示了修建公路的可行方案。如果考慮修建造價(jià),那么如何選擇n-1條線路,使得修建公路的總造價(jià)最小呢?這就是要構(gòu)造該圖的一棵最小生成樹。 4、作用 7.4最小生成樹 二、普里姆(Prim)算法 選擇一個(gè)頂點(diǎn)Vi作為源點(diǎn), 并納入集合Vi;ABEDC58416237頂點(diǎn)集合: A選擇與Vi鄰接的頂點(diǎn)中,與Vi構(gòu)成所有
9、邊中權(quán)值最小的頂 點(diǎn)Vj并納入集合Vi,Vj; A,C選擇與Vi或者Vj鄰接的頂點(diǎn)中,與Vi或者Vj構(gòu)成所有邊中 的權(quán)值最小的頂點(diǎn)Vw并納入集合Vi,V,Vw;重復(fù)第三步,直到包含所有頂點(diǎn)(不允許出現(xiàn)回路)。 A,C,E A,C,E,D A,C,E,D,BABEDC41237.4最小生成樹 三、克魯斯卡爾(Kruskal)算法 選擇一條權(quán)值最小的邊,并納入集合E1 ;ABEDC58416237邊集合: (A,C)在剩下的邊當(dāng)中再選擇一條權(quán)值最小的邊,并納入集合E1,E2;(A,C),(D,E)重復(fù)執(zhí)行第二步,直到邊集合中已經(jīng)包含圖G所有頂點(diǎn)為止(不允許出現(xiàn)回路)。 (A,C),(D,E),(C
10、,E) (A,C),(D,E),(C,E),(B,C)ABEDC4132107.5最短路徑 一、單源最短路徑 1、單源最短路徑的定義:在有向網(wǎng)中,從某個(gè)源點(diǎn)V0出發(fā) 到其它各個(gè)頂點(diǎn)的最短路徑。12354209050302040 2、單源最短路徑求解方法: 迪杰斯特拉(Dijkstra) 方法循 環(huán)SWd2 d3 d4 d5p2 p3 p4 p5初始化1-20 30 90 1 1 1 111,2220 70 30 901 2 1 121,2,4420 40 30 701 4 1 431,2,4,3320 40 30 601 4 1 341,2,4,3,5520 40 30 601 4 1 37.5最短路徑 二、每一對(duì)頂點(diǎn)之間的最短路徑
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度交通安全知識(shí)普及與駕駛技能培訓(xùn)合同
- 企業(yè)并購(gòu)居間合同委托書
- 二零二五年度辦公室勞動(dòng)合同地址確認(rèn)及員工離職補(bǔ)償協(xié)議
- 三農(nóng)田灌溉方案與實(shí)施手冊(cè)
- 汽車維修保養(yǎng)規(guī)范手冊(cè)
- 醫(yī)療器械產(chǎn)品采購(gòu)合同
- 石材購(gòu)銷合同補(bǔ)充合同
- 合作收購(gòu)不良資產(chǎn)協(xié)議
- 人力資源管理勞動(dòng)法律法規(guī)遵守作業(yè)指導(dǎo)書
- 企業(yè)并購(gòu)交易操作指導(dǎo)書
- 計(jì)算機(jī)控制系統(tǒng) 課件 第10章 網(wǎng)絡(luò)化控制系統(tǒng)的分析與設(shè)計(jì)
- 魯教版(五四制)七年級(jí)數(shù)學(xué)上冊(cè)期末考試卷-附帶答案
- 南京大學(xué)儀器分析習(xí)題集
- 空調(diào)維保應(yīng)急預(yù)案
- 小學(xué)六年級(jí)數(shù)學(xué)上冊(cè)解決問題專項(xiàng)必考題西師大版
- 2023年高考語(yǔ)文全國(guó)乙卷作文范文及導(dǎo)寫(解讀+素材+范文)課件版
- 模塊建房施工方案
- 多域聯(lián)合作戰(zhàn)
- 美容美發(fā)場(chǎng)所衛(wèi)生規(guī)范
- 《隧道工程》(第二版)課件 第1、2章 緒論、隧道工程勘測(cè)
- 設(shè)計(jì)師績(jī)效考核
評(píng)論
0/150
提交評(píng)論