鄰接矩陣存儲法和Floyd算法求解任意兩個頂點的最短路徑數(shù)據(jù)結(jié)構報告_第1頁
鄰接矩陣存儲法和Floyd算法求解任意兩個頂點的最短路徑數(shù)據(jù)結(jié)構報告_第2頁
鄰接矩陣存儲法和Floyd算法求解任意兩個頂點的最短路徑數(shù)據(jù)結(jié)構報告_第3頁
鄰接矩陣存儲法和Floyd算法求解任意兩個頂點的最短路徑數(shù)據(jù)結(jié)構報告_第4頁
鄰接矩陣存儲法和Floyd算法求解任意兩個頂點的最短路徑數(shù)據(jù)結(jié)構報告_第5頁
全文預覽已結(jié)束

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

1、-. z數(shù)據(jù)構造上機報告2):可心*:班級:1403018題目描述一個圖的存儲矩陣如下所示頂點分別是0、1、2、3、4、5:0, 12, 18, , 17, 12, 0, 10, 3, , 518,10, 0, , 21, 11, 3, , 0, , 817, , 21, , 0, 16, 5, 11, 8, 16, 0試用鄰接矩陣存儲法和Floyd算法求解任意兩個頂點的最短路徑。輸入:輸入數(shù)據(jù)第一行為1個正整:頂點個數(shù)n(頂點將分別按0,1,n-1進展編號)。后面有n+1行,前n行都有n個整數(shù)第i行第j個數(shù)表示頂點i-1和頂點j-1之間的邊長,用10000來表示兩個頂點之間無邊;第n+1行輸

2、入一對頂點*和y輸出:*和y頂點的最短路徑長度和最短路徑(路徑換行輸出,只輸出頂點編號序列)。例如輸入1:60 12 18 10000 17 1000012 0 10 3 10000 518 10 0 10000 21 1110000 3 10000 0 10000 817 10000 21 10000 0 1610000 5 11 8 16 00 1例如輸出1:1201例如輸入2:60 12 18 10000 17 1000012 0 10 3 10000 518 10 0 10000 21 1110000 3 10000 0 10000 817 10000 21 10000 0 16100

3、00 5 11 8 16 02 3例如輸出2:13213例如輸入3:60 12 18 10000 17 1000012 0 10 3 10000 518 10 0 10000 21 1110000 3 10000 0 10000 817 10000 21 10000 0 1610000 5 11 8 16 01 4例如輸出3:21154例如輸入in和out文件的容:60 12 18 10000 17 1000012 0 10 3 10000 518 10 0 10000 21 1110000 3 10000 0 10000 817 10000 21 10000 0 1610000 5 11 8

4、 16 03 4例如輸出:24354解題思路先用鄰接矩陣存儲法構建矩陣輸入,分別輸入頂點數(shù),路徑長度矩陣,鄰接矩陣,再通過Floyd算法求解任意兩個頂點的最短路徑,具體代碼如下。源代碼#include#includeint main()int n,i,j,k,a,b,ne*t;printf(請輸入頂點數(shù):n);scanf(%d,&n);int Gnn;/輸入鄰接矩陣int Dnn;/路徑長度矩陣int Pnn;/路徑矩陣指向頭結(jié)點的后繼路徑如果是abc,則Pac=b Pbc=cprintf(請輸入鄰接矩陣:n);for(i=0;in;i+)for(j=0;jn;j+)scanf(%d,&Gij);Dij=Gij;Pij=j;for(k=0;kn;k+)for(i=0;in;i+)for(j=0;jDik+Dkj)Dij=Dik+Dkj;Pij=Pik;scanf(%d %d,&a,&b);if(Dab=10000)printf(a和b之間無路徑n);elseprintf(%dn,Dab);printf(%d,a);for(

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論