下載本文檔
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
《數(shù)據(jù)結(jié)構(gòu)》課程實(shí)驗(yàn)報(bào)告(實(shí)驗(yàn)5——圖的存儲(chǔ)方式和應(yīng)用)學(xué)生姓名
學(xué)
號(hào)班
級(jí)
指導(dǎo)老師實(shí)驗(yàn)名稱
實(shí)驗(yàn)成績(jī)實(shí)驗(yàn)報(bào)告實(shí)驗(yàn)?zāi)康模焊鶕?jù)圖中頂點(diǎn)和邊的信息編制程序建立圖的鄰接矩陣。實(shí)驗(yàn)概述實(shí)
實(shí)驗(yàn)要求:(1)程序要有一定的通用性。(2)直接根據(jù)圖中每個(gè)結(jié)點(diǎn)與其他結(jié)點(diǎn)的關(guān)聯(lián)情況輸入相關(guān)信息,程序能自動(dòng)形成鄰接矩陣。實(shí)驗(yàn)基本原理:(1)為保證程序的通用性,適合各種圖,在建立圖的鄰接矩陣算法中增加兩個(gè)參數(shù)k1和k2。k1為0表示無(wú)向圖,否則為有向圖;k2為0表示邊上無(wú)權(quán),否則為邊上有權(quán)。(2)初始化鄰接矩陣時(shí),對(duì)角線元素設(shè)置為0。若圖的邊上有權(quán),則其他元素值設(shè)為∞;若邊上無(wú)權(quán),則設(shè)為0。程序代碼:/*實(shí)驗(yàn)4.1建立圖的鄰接矩陣*/#include<stdio.h>驗(yàn)內(nèi)容
#defineMaxVertexNum8#defineMaxEdgeNum20#defineMaxValue1000
/*定義圖的最大頂點(diǎn)數(shù)*//*定義圖的最大邊數(shù)*//*定義相當(dāng)于∞的常量值*/typedefintVertexType;/*定義頂點(diǎn)數(shù)據(jù)類型VertexType為整型*/typedefVertexTypevexlist[MaxVertexNum];/*定義vexlist為存儲(chǔ)頂點(diǎn)信息的數(shù)組類型*/typedefintadjmatrix[MaxVertexNum][MaxVertexNum];/*定義adjmatrix為存儲(chǔ)鄰接矩陣的數(shù)組類型*/voidCreateMatrix(vexlistGV,adjmatrixGA,intn,inte,intk1,intk2);
/*建立圖的鄰接矩陣*/voidShowMatrix(vexlistGV,adjmatrixGA,intn);/*輸出圖的鄰接矩陣*/voidmain(){intn,e,k1,k2;vexlistgv;/*定義保存頂點(diǎn)信息的數(shù)組*/adjmatrixga;
/*定義保存鄰接矩陣的數(shù)組*//*輸入一個(gè)圖的頂點(diǎn)數(shù)和邊數(shù)*/printf("輸入待處理圖的頂點(diǎn)數(shù)和邊數(shù):");scanf("%d%d",&n,&e);/*輸入有無(wú)向選擇和有無(wú)權(quán)選擇*/printf("輸入有無(wú)向選擇和有無(wú)權(quán)選擇(0為無(wú),非0為有):");scanf("%d%d",&k1,&k2);CreateMatrix(gv,ga,n,e,k1,k2);/*建立圖的鄰接矩陣*/printf("\n圖的鄰接矩陣為:\n\n");ShowMatrix(gv,ga,n);
/*輸出圖的鄰接矩陣*/}/*輸入n個(gè)頂點(diǎn)和e條邊,建立圖的鄰接矩陣*/voidCreateMatrix(vexlistGV,adjmatrixGA,intn,inte,intk1,intk2){/*k1為0則無(wú)向,否則為有向;k2為0則無(wú)權(quán),否則為有權(quán)*/inti,j,k,w;/*建立頂點(diǎn)數(shù)組*/printf("輸入%d個(gè)頂點(diǎn)數(shù)據(jù):",n);for(i=0;i<n;i++)scanf("%d",&GV[i]);/*初始化圖的鄰接矩陣*/for(i=0;i<n;i++)for(j=0;j<n;j++){if(i==j)GA[i][j]=0;elseif(k2!=0)GA[i][j]=MaxValue;elseGA[i][j]=0;}if(k1==0&&k2==0)
/*建立無(wú)向無(wú)權(quán)圖*/{printf("輸入%d條無(wú)向無(wú)權(quán)邊的起點(diǎn)和終點(diǎn)序號(hào)!\n",e);for(k=1;k<=e;k++){scanf("%d%d",&i,&j);GA[i][j]=GA[j][i]=1;}}elseif(k1==0&&k2!=0)/*建立無(wú)向有權(quán)圖*/{printf("輸入%d條無(wú)向有權(quán)邊的起點(diǎn)和終點(diǎn)序號(hào)及權(quán)值!\n",e);for(k=1;k<=e;k++){scanf("%d%d%d",&i,&j,&w);GA[i][j]=GA[j][i]=w;}}elseif(k1!=0&&k2==0)/*建立有向無(wú)權(quán)圖*/{printf("輸入%d條有向無(wú)權(quán)邊的起點(diǎn)和終點(diǎn)序號(hào)!\n",e);for(k=1;k<=e;k++){scanf("%d%d",&i,&j);GA[i][j]=1;}}elseif(k1!=0&&k2!=0)/*建立有向有權(quán)圖*/{printf("輸入%d條有向有權(quán)邊的起點(diǎn)和終點(diǎn)序號(hào)及權(quán)值!\n",e);for(k=1;k<=e;k++){scanf("%d%d%d",&i,&j,&w);GA[i][j]=w;}}}/*輸出圖的鄰接矩陣*/voidShowMatrix(vexlistGV,adjmatrixGA,intn){inti,j;printf("
頂點(diǎn)");for(i=0;i<n;i++)printf("%6d",GV[i]);printf("\n");for(i=0;i<n;i++){printf("%6d",GV[i]);for(j=0;j<n;j++){if(GA[i][j]==MaxValue)printf("%6s","∞");elseprintf("%6d",GA[i][j]);}printf("\n");}}實(shí)驗(yàn)結(jié)果:測(cè)試用例1無(wú)向無(wú)權(quán)圖如下圖所示。程序運(yùn)行結(jié)果如下:測(cè)試用例2有向有權(quán)圖如下圖所示。程序運(yùn)行結(jié)果如下:(1)具有n個(gè)頂點(diǎn)的圖,其鄰接矩陣為
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 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年四平貨運(yùn)運(yùn)輸駕駛員從業(yè)資格證考試試題
- 2025年福州貨運(yùn)資格證恢復(fù)模擬考試
- 2025年怎么考貨運(yùn)從業(yè)資格證考試
- 2025年葫蘆島貨運(yùn)從業(yè)資格證考試試題及答案
- 第七章 認(rèn)識(shí)區(qū)域:聯(lián)系與差異-2022-2023學(xué)年八年級(jí)地理下冊(cè)單元中考真練卷(湘教版) 帶解析
- 地?zé)崮馨l(fā)電技術(shù)研究合同
- 橋梁建設(shè)個(gè)人承包施工協(xié)議
- 綜藝節(jié)目制片人員聘用合同
- 生態(tài)園生態(tài)餐廳建設(shè)協(xié)議
- 實(shí)習(xí)生崗位和權(quán)益保障
- 部編版語(yǔ)文五年級(jí)下冊(cè)第二單元走進(jìn)中國(guó)古典名著 大單元整體教學(xué)設(shè)計(jì)
- 開(kāi)診所可行性分析報(bào)告
- 項(xiàng)目復(fù)盤工作報(bào)告(模版)課件
- 設(shè)備操作手冊(cè)編寫與更新方法和技巧講解與實(shí)操演示
- 心力衰竭治療中的體外機(jī)械循環(huán)輔助
- 《無(wú)線局域網(wǎng)》課件
- 益豐大藥房入職測(cè)評(píng)題庫(kù)
- 排水溝修復(fù)方案
- 人教版五年級(jí)數(shù)學(xué)上冊(cè)專項(xiàng)計(jì)算題12套(每日一練)
- RB-T 131-2022 綠色鋼材產(chǎn)品評(píng)價(jià)要求
- 護(hù)理質(zhì)量管理實(shí)踐課件
評(píng)論
0/150
提交評(píng)論