




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、精選優(yōu)質(zhì)文檔-傾情為你奉上離散數(shù)學(xué)大作業(yè)論文題目: 最小生成樹及其算法 院 系: 電子工程學(xué)院 專 業(yè): 智能科學(xué)與技術(shù) 學(xué) 號: 姓 名: 二零一一 年 十一 月專心-專注-專業(yè)摘 要連通圖廣泛應(yīng)用于交通建設(shè),求連通圖的最小生成樹是最主要的應(yīng)用。比如要在n個城市間建立通信聯(lián)絡(luò)網(wǎng),要考慮的是如何保證n點連通的前提下最節(jié)省經(jīng)費,就應(yīng)用到了最小生成樹。求圖的最小生成樹有兩種算法,一種是Prim(普里姆)算法,另一種是Kruskal(克魯斯卡爾)算法。本文主要介紹Prim(普里姆)算法及利用。本文從分析課題的題目背景、題目意義、題目要求等出發(fā),分別從需求分析、總體設(shè)計、詳細設(shè)計、測試等各個方面詳細介
2、紹了系統(tǒng)的設(shè)計與實現(xiàn)過程,最后對系統(tǒng)的完成情況進行了總結(jié)。關(guān)鍵字:prum算法 最小生成樹 算法比較1.有關(guān)最小生成樹的概念最小生成樹:連通加權(quán)圖里權(quán)和最小的生成樹稱為最小生成樹。從最小生成樹定義看主要先了解圖、樹及生成樹。本文中最小生成樹在計算機中存儲方法是應(yīng)用鄰接矩陣的形式存儲。故也應(yīng)了解鄰接矩陣的定義。定義一(圖):圖是有一個非空的頂點集合和一個描述頂點之間的關(guān)系即邊的集合組成。它可以形式化的定義為:G=(V,E)V= | VertexTypeE=|,VP(,)其中,G表示一個圖,V是圖G中頂點的集合,E是V中頂點偶對的有限集,這些頂點偶對稱為邊,VertexType是用于描述頂點類型,
3、集合E中P(,)的含義是:對有向圖來說用“”表示,對無向圖來說用“()”表示,即從到 兩個頂點之間存在邊。定義二(樹):樹包含n(n=0)個節(jié)點。當(dāng)n=0時表示為空樹。其定義如下:T=(D,R)其中,D為樹中節(jié)點的有限集合,關(guān)系R滿足一下條件:1) 有且僅有一個節(jié)點k0屬于D,它對于關(guān)系R來說沒有前趨節(jié)點,結(jié)點k0稱作樹的根結(jié)點。2) 除根結(jié)點k0之外,D中的每個結(jié)點僅有一個前趨結(jié)點,但可以有過個后繼結(jié)點。3) D中可以有多個終端結(jié)點。 即除根結(jié)點無父結(jié)點,其余各結(jié)點都有一個父結(jié)點和n(n=0)個子結(jié)點。 圖的矩陣表示,本文中只用到了鄰接矩陣,故在這只提出鄰接矩陣的定義,及其圖在鄰接矩陣中的表
4、示。設(shè)圖 A = (V, E)是一個有 n 個頂點的圖, 圖的鄰接矩陣是一個二維數(shù)組 A.edgenn,用來存放頂點的信息和邊或弧的信息。定義三(鄰接矩陣(Adjacency Matrix):是表示頂點之間相鄰關(guān)系的矩陣。設(shè)G=(V,E)是一個圖,其中V=v1,v2,vn。G的鄰接矩陣是一個具有下列性質(zhì)的n階方陣:(本文主要為無向圖的鄰接矩陣)(1) 無向圖的鄰接矩陣是對稱的;有向圖的鄰接矩陣可能是不對稱的。(1)無向圖的鄰接矩陣中第i行第j列表示i結(jié)點到j(luò)結(jié)點的度即權(quán)值,可以表示為某一具體應(yīng)用的數(shù)據(jù)。也表示i結(jié)點是否與j結(jié)點連通。 定義四(生成樹):如果T是G的一個生成子圖又是一棵樹,則稱T
5、是圖G的一棵生成樹。2.prim算法介紹從單一頂點開始,普里姆算法按照以下步驟逐步擴大樹中所含頂點的數(shù)目,直到遍及連通圖的所有頂點。1. 輸入:一個加權(quán)連通圖,其中頂點集合為V,邊集合為E;2. 初始化:Vnew = x,其中x為集合V中的任一節(jié)點(起始點),Enew = ;3. 重復(fù)下列操作,直到Vnew = V: 1. 在集合E中選取權(quán)值最小的邊(u, v),其中u為集合Vnew中的元素,而v則不是(如果存在有多條滿足前述條件即具有相同權(quán)值的邊,則可任意選取其中之一);2. 將v加入集合Vnew中,將(u, v)加入集合Enew中;4. 輸出:使用集合Vnew和Enew來描述所得到的最小生
6、成樹。3.prim算法的實現(xiàn)#include#define TURE 999typedef struct ArcNodechar vexs10;int edgs1010;int n,e;MGraph;struct edgint v1;int v2;int cost;A10,B10;/創(chuàng)建圖void GreateMGraph(MGraph *G) int i,j,k,weight,m,n;int ch1,ch2;char a,b;printf(ntt輸入頂點數(shù)邊數(shù)(格式如:3 4):);scanf(%d %d,&(G-n),&(G-e); /輸入頂點數(shù),邊數(shù)for(i=0;in;i+)getch
7、ar();printf(ntt請輸入第%d個頂點:,i+1);scanf(%c,&(G-vexsi); /輸入頂點 for(i=0;in;i+)for(j=0;jn;j+)G-edgsij=0;for(k=0;ke;k+)/getchar();printf(ntt請輸入第%d條邊的頂點權(quán)值(格式如:i j):,k+1);getchar(); scanf(%c %c %d,&a,&b,&weight);/scanf(%c,&a);/getchar(); / scanf(%c,&b);m=0;n=0; for( m=0;G-vexsm!=a;m+); for( n=0;G-vexsn!=b;n+)
8、;/printf(ntt請輸入權(quán)值:);scanf(%d,&weight); ch1=m;ch2=n; G-edgsch1ch2=weight;G-edgsch2ch1=weight;void prim(MGraph *G, int v) int i,j,k,min; struct int adjvex; int lowcost; closedge10; for (i=0;in;i+) /初始化 closedgei.lowcost=G-edgsvi; closedgei.adjvex=v; closedgev.lowcost=TURE; for (i=1;in;i+) min=100; /*
9、100為允許的最大權(quán)值*/ for(j=0;jn;j+) if (closedgej.lowcost!=TURE & closedgej.lowcost!=0) if (closedgej.lowcostvexsclosedgek.adjvex, G-vexsk, min); closedgek.lowcost=TURE; for (j=0;jn;j+) if (closedgej.lowcost!=TURE) if(G-edgskjedgskj; closedgej.adjvex=k; void Kruskal(MGraph *G)int k=0,m=0,n=0;int vf1,vf2,mi
10、n,vset100;for(int i=0;in;i+)for(int j=0;jn;j+)if(G-edgsij!=0)if(iedgsij;k+;n=0;while(me-1)min=999;for(i=n;ik;i+)if(Ai.costmin)Bn.v1=Ai.v1;Bn.v2=Ai.v2;Bn.cost=An.cost;min=Ai.cost;n+;m+;for(i=0;in;i+)vseti=i;k=0;while(ke)vf1=Bk.v1;vf2=Bk.v2;if(vsetvf1!=vsetvf2)printf(%c,%c,%d),G-vexsBk.v1,G-vexsBk.v2,
11、Bk.cost);vsetvf2=vsetvf1;k+;int main(void)MGraph *G,a; char ch1;int choice;G=&a;printf(ntt建立圖的鄰接矩陣n); GreateMGraph(G); /* printf(ntt已建立一個鄰接矩陣!n);for(i=0;in;i+)printf(ntt);for(j=0;jn;j+)printf(%5d,G-edgsij);*/getchar();ch1=1;while(ch1=1)printf(n);printf(ntt 最小生成樹 );printf(ntt*);printf(ntt* 1prim算法 *)
12、;/printf(ntt* 2kruskal算法 *);printf(ntt* 0退 出 *);printf(ntt*);printf(ntt請選擇菜單號0-1:);scanf(%d,&choice);getchar();switch(choice)case 1: printf(nttprim算法輸出為:); prim(G,0);break;case 2:printf(nttKruskal算法輸出為:); Kruskal(G);break;case 0: ch1=0; break;default:printf(ntt輸入錯誤!請重新輸入!);return 0;4應(yīng)用prim算法的例子 如下圖所示的賦權(quán)圖表示某七個城市 及預(yù)先算出它們之間的一些直接通信成路造價(單位:萬元),試給出一個設(shè)計方案,使得
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025上海市建筑安全員-C證考試(專職安全員)題庫及答案
- 深圳技術(shù)大學(xué)《高分子材料助劑及配方設(shè)計》2023-2024學(xué)年第二學(xué)期期末試卷
- 河南信息統(tǒng)計職業(yè)學(xué)院《納稅籌劃與實務(wù)》2023-2024學(xué)年第二學(xué)期期末試卷
- 2024-2025學(xué)年河南省開封市五縣聯(lián)考高二上學(xué)期第二次月考(期中)歷史試卷
- 山西國際商務(wù)職業(yè)學(xué)院《給排水管道工程》2023-2024學(xué)年第二學(xué)期期末試卷
- 鶴壁能源化工職業(yè)學(xué)院《營養(yǎng)與食品衛(wèi)生學(xué)2》2023-2024學(xué)年第二學(xué)期期末試卷
- 2025青海省建筑安全員-C證(專職安全員)考試題庫
- 2025黑龍江省安全員B證考試題庫及答案
- 福建衛(wèi)生職業(yè)技術(shù)學(xué)院《組織胚胎學(xué)》2023-2024學(xué)年第二學(xué)期期末試卷
- 大連財經(jīng)學(xué)院《VisualBasic程序設(shè)計》2023-2024學(xué)年第二學(xué)期期末試卷
- 五子棋基礎(chǔ)入門課件
- 課程思政融入專業(yè)課程的
- 涉密人員專題培訓(xùn)課件
- 浙江游戲產(chǎn)業(yè)園可行性方案
- 提升辦公室工作效能的經(jīng)驗交流發(fā)言模板
- 胃癌影像診斷課件
- 建筑工程勞務(wù)作業(yè)服務(wù)方案
- 教育興則國家興教育強則國家強心得
- (完整版)小學(xué)生心理健康教育課件
- 軍隊文職專用簡歷(2023年)
- 建筑裝飾工程施工總平面布置圖
評論
0/150
提交評論