數(shù)據(jù)結(jié)構(gòu)實訓(xùn)報告_第1頁
數(shù)據(jù)結(jié)構(gòu)實訓(xùn)報告_第2頁
數(shù)據(jù)結(jié)構(gòu)實訓(xùn)報告_第3頁
數(shù)據(jù)結(jié)構(gòu)實訓(xùn)報告_第4頁
數(shù)據(jù)結(jié)構(gòu)實訓(xùn)報告_第5頁
已閱讀5頁,還剩2頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、 n更多企業(yè)學(xué)院:中小企業(yè)管理全能版183套講座+89700份資料總經(jīng)理、高層管理49套講座+16388份資料中層管理學(xué)院46套講座+6020份資料 國學(xué)智慧、易經(jīng)46套講座人力資源學(xué)院56套講座+27123份資料各階段員工培訓(xùn)學(xué)院77套講座+ 324份資料員工管理企業(yè)學(xué)院67套講座+ 8720份資料工廠生產(chǎn)管理學(xué)院52套講座+ 13920份資料財務(wù)管理學(xué)院53套講座+ 17945份資料 銷售經(jīng)理學(xué)院56套講座+ 14350份資料銷售人員培訓(xùn)學(xué)院72套講座+ 4879份資料  學(xué)生實訓(xùn)報告  實訓(xùn)名稱: 數(shù)據(jù)結(jié)構(gòu)實訓(xùn)指導(dǎo)教師: 學(xué)號:

2、 班級: 日期: 一、實訓(xùn)項目項目名稱:全國交通咨詢模擬二、實訓(xùn)的目的1.熟悉圖數(shù)據(jù)結(jié)構(gòu);2.掌握圖的順序存儲結(jié)構(gòu)鄰接表;3.掌握最短路徑算法4.上機調(diào)試程序,掌握查錯、排錯使程序能正確運行。三實訓(xùn)要求1.每個人獨立完成實訓(xùn)項目,相互之間可以交流,不能抄襲2.實訓(xùn)的成果包括程序代碼和報告3.程序代碼要有注釋和說明三、實驗的環(huán)境:1.硬件環(huán)境: PC機2.軟件環(huán)環(huán)境:Windows2000 +Visual C+6四、算法描述: 建立圖的數(shù)據(jù)結(jié)構(gòu),采用鄰接矩陣作為其存儲結(jié)構(gòu)。存儲以上的全國主要城市的交通信息。通過軟件模擬的方法實現(xiàn):給定出發(fā)點和終點,求出它們之間的最短路徑,并給出最短路徑的線路。五

3、、源程序清單:#include <stdio.h>#include<string.h>#define VEX_NUM 26#define MAXINT 1000000typedef struct graph char cityVEX_NUM10; int arcsVEX_NUMVEX_NUM;Mgraph;void CreatGraph(Mgraph *G,int e);void Dijkstra(Mgraph *Gn, int v0,int path,int dist);void PutPath(Mgraph *g,int v0,int v1,int p,int d)

4、;int index(char s,Mgraph *g);void main() Mgraph *g; int i; int e; int v0,v1; char sr10,dt10; int distVEX_NUM; int pathVEX_NUM; g=new Mgraph; CreatGraph(g,30); printf("輸入出發(fā)城市和終點城市n"); getchar(); gets(sr); v0=index(sr,g); gets(dt); v1=index(dt,g); Dijkstra(g,v0,path,dist); PutPath(g,v0,v1,pa

5、th,dist);void CreatGraph(Mgraph *G,int e) int i,j,k,cost; printf("輸入城市名稱n"); for(i=0;i<VEX_NUM;+i) scanf("%s",G->cityi); for(i=0;i<VEX_NUM;i+) for(j=0;j<VEX_NUM;j+) G->arcsij=MAXINT; printf("輸入城市之間的距離n"); for(k=0;k<e;k+) scanf("%d,%d,%d",&

6、;i,&j,&cost); G->arcsij=cost; G->arcsji=cost; void Dijkstra(Mgraph *Gn, int v0,int path,int dist) int sVEX_NUM; int v; int w; int i,j,k; int min; for(v=0; v<VEX_NUM; v+) sv=0; distv=Gn->arcsv0v; if(distv<MAXINT) pathv=v0; else pathv=-1; distv0=0;sv0=1; for(i=1;i<VEX_NUM -1;

7、i+) min=MAXINT; for(w=0;w<VEX_NUM;w+) if(!sw && distw<min) v=w; min=distw; sv=1; for(j=0;j<VEX_NUM;j+) if(!sj && (min+Gn->arcsvj<distj) distj=min+Gn->arcsvj; pathj=v; void PutPath(Mgraph *g,int v0,int v1,int p,int d) int k; int next; int top=0; int st20; if(dv1<M

8、AXINT && v1!=v0) sttop+=v1; next=pv1; while(next!=v0) sttop+=next; next=pnext; else if(v1!=v0) printf("%s->%s:沒有路徑n",g->cityv0,g->cityv1); return; sttop+=v0; while(top) next=st-top; if(top!=0) printf("%s->",g->citynext); else printf("%sn",g->citynext); printf("兩個城市之間的最短距離為:%dn",dv1);int index(cha

溫馨提示

  • 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論