校园导游java版,校园导游系统Word版
《校園導(dǎo)游系統(tǒng)Word版》由會(huì)員分享,可在線閱讀,更多相關(guān)《校園導(dǎo)游系統(tǒng)Word版(20頁(yè)珍藏版)》請(qǐng)?jiān)谌巳宋膸?kù)網(wǎng)上搜索。
1、傳播優(yōu)秀Word版文檔 ,希望對(duì)您有幫助,可雙擊去除!課程設(shè)計(jì)報(bào)告課程名稱: 數(shù)據(jù)結(jié)構(gòu)與算法 題目名稱: 校園導(dǎo)游系統(tǒng) 學(xué)生學(xué)院: 數(shù)學(xué)與計(jì)算機(jī)科學(xué)系 專業(yè)班級(jí): 2016級(jí)計(jì)算機(jī)科學(xué)與技術(shù)本科班 小組組長(zhǎng): 王明 小組成員: 王明 鄭雙鳳 呂運(yùn)發(fā) 指導(dǎo)老師: 熊小穎 老師 2017年10月15日目錄一、設(shè)計(jì)目的3二、問題描述3三、基本要求3四、概要設(shè)計(jì)3五、主程序4六、測(cè)試數(shù)據(jù)136.1調(diào)試程序所用數(shù)據(jù)136.2程序的調(diào)試結(jié)果七、總結(jié)一、設(shè)計(jì)目的 隨著現(xiàn)代社會(huì)生活節(jié)奏的加快,人們外出旅行以尋求放松的時(shí)間越來越多。考慮到游客不可能對(duì)所有景點(diǎn)都有所了解,因此可能無法找到游玩景點(diǎn)最省時(shí),最高效的路。
2、徑,而人工導(dǎo)游成本又過高,故使用C語(yǔ)言,基于數(shù)據(jù)結(jié)構(gòu)中圖的相關(guān)算法開發(fā)了“南昌師范學(xué)院導(dǎo)游系統(tǒng)”。 開發(fā)本系統(tǒng)目的在于為來訪我校的游客提供一條最短游覽路徑,本系統(tǒng)從實(shí)際出發(fā),通過對(duì)校園平面圖的分析,將其轉(zhuǎn)化為數(shù)據(jù)并保存在系統(tǒng)中,因此系統(tǒng)提供的路徑具有較大的可信性。二、問題描述設(shè)計(jì)校園導(dǎo)游程序,為來訪的客人提供服務(wù),為來訪我校的游客提供一條在游客當(dāng)前位置到目的地的最短游覽路徑,找到游玩景點(diǎn)最省時(shí),最高效的路徑。三、 基本要求1. 假設(shè)有一所校園的平面圖,所含景點(diǎn)不小于10個(gè),請(qǐng)選擇適當(dāng)?shù)淖鴺?biāo)來表示出該圖上的各個(gè)景點(diǎn)。2. 為來訪的客人提供從當(dāng)前位置到其他景點(diǎn)的最短路徑的咨詢;3. 必須具有校園平。
3、面圖的修改和擴(kuò)充功能(即某些景點(diǎn)坐標(biāo)的修改和景點(diǎn)個(gè)數(shù)的增加)。四、 概要設(shè)計(jì)算法思路本設(shè)計(jì)的重難點(diǎn)在于問題二的解決。利用了弗洛伊德算法函數(shù)設(shè)計(jì)Floyd() 本算法在設(shè)計(jì)時(shí)參考了數(shù)據(jù)結(jié)構(gòu)C語(yǔ)言版一書中有關(guān)Floyd算法的介紹,同時(shí)借鑒了如今網(wǎng)上流行的設(shè)計(jì)方式。之所以選擇本算法來實(shí)現(xiàn)計(jì)算最短路徑,原因在于本算法容易理解,可以算出任意兩個(gè)節(jié)點(diǎn)之間的最短距離,代碼編寫簡(jiǎn)單。但是,本算法缺點(diǎn)在于時(shí)間復(fù)雜度過高,不適合用于計(jì)算大量數(shù)據(jù)。Floyd算法首先將兩景點(diǎn)間路徑長(zhǎng)度數(shù)據(jù)存儲(chǔ)于數(shù)組Dvw中,而后使用一個(gè)三維數(shù)組用于存放最短路徑所經(jīng)過的頂點(diǎn),接下來使用三重循環(huán)判斷兩景點(diǎn)之間直接路徑是否大于間接路徑,若。
4、大于,則將三維數(shù)組中存放的頂點(diǎn)信息更改為簡(jiǎn)介路徑所經(jīng)過的頂點(diǎn)信息。以上部分完成后,當(dāng)用于標(biāo)記輸入數(shù)據(jù)是否合法的flag=1時(shí),輸出錯(cuò)誤信息,提示用戶重新輸入,當(dāng)輸入數(shù)據(jù)合法時(shí),輸出以上程序得到結(jié)果。五、 主程序#include#include#define MAX_VERTEX_NUM 100 /最大頂點(diǎn)數(shù)#define MAX_INT 10000 /無窮大 typedef int AdjType; typedef structint piMAX_VERTEX_NUM;/存放v到vi的一條最短路徑int end;PathType;typedef char VType; /設(shè)頂點(diǎn)為字符類型typ。
5、edef structVType VMAX_VERTEX_NUM; /頂點(diǎn)存儲(chǔ)空間 AdjType AMAX_VERTEX_NUMMAX_VERTEX_NUM; /鄰接矩陣 MGraph;/鄰接矩陣表示的圖/Floyd算法/求網(wǎng)G(用鄰接矩陣表示)中任意兩點(diǎn)間最短路徑 /D是最短路徑長(zhǎng)度矩陣,path最短路徑標(biāo)志矩陣 void shortdistance(MGraph * G,int pathMAX_VERTEX_NUM,int DMAX_VERTEX_NUM,int n) int i,j,k;for(i=0;iAijAij; for(k=0;kDik+Dkj)Dij=Dik+Dkj;/取小者。
6、 pathij=pathik;/改Vi的后繼 for(i=0;in;i+)/輸出每對(duì)頂點(diǎn)間最短路徑長(zhǎng)度及最短路徑for(j=0;jn;j+)printf(V%d到V%d的最短長(zhǎng)度:,i,j); printf(%dt,Dij);/輸出Vi到Vj的最短路徑長(zhǎng)度k=pathij;/取路徑上Vi的后續(xù)Vkif(k=-1)printf(There is no path between V%d and V%dn,i,j);/路徑不存在 elseprintf(最短路徑為:); printf(V%d,i);/輸出Vi的序號(hào)iwhile(k!=j)/k不等于路徑終點(diǎn)j時(shí) printf(,V%d,k);/輸出kk。
7、=pathkj;/求路徑上下一頂點(diǎn)序號(hào) printf(,V%d)n,j);/輸出路徑終點(diǎn)序號(hào) printf(n); int introduce(char scenery)getchar();printf(請(qǐng)輸入景點(diǎn)對(duì)應(yīng)的大寫字母n);scanf(%c,&scenery);switch(scenery)default:printf(沒有該景點(diǎn)n);case A:printf(圖書館,距離南大門100米n);break;case B:printf(實(shí)驗(yàn)樓,距離南大門200米n);break;case C:printf(理科樓,理科類學(xué)生上課地點(diǎn)n);break;case D:printf(女宿舍樓。
8、,南昌師范學(xué)院的女孩子的家n);break;case E:printf(男宿舍樓,南昌師范學(xué)院的男孩子的家n);break;case F:printf(大學(xué)生活動(dòng)中心,大學(xué)生活動(dòng)休閑場(chǎng)所n);break;case G:printf(田徑場(chǎng),運(yùn)動(dòng)會(huì)舉辦場(chǎng)地n);break;case H:printf(逸夫大禮堂,各種活動(dòng)舉辦場(chǎng)所n);break;case I:printf(體育館,正在建設(shè)中n);break;case J:printf(綜合樓,領(lǐng)導(dǎo)辦公處n);break;case K:printf(北大門,學(xué)校出口n);break;return 0;int main()char kk;char 。
9、scenery;int i,j,k,v=A,m=11;/v為起點(diǎn),n為頂點(diǎn)個(gè)數(shù) MGraph G;int pathMAX_VERTEX_NUMMAX_VERTEX_NUM;/v到各頂點(diǎn)的最短路徑向量int DMAX_VERTEX_NUMMAX_VERTEX_NUM;/v到各頂點(diǎn)最短路徑長(zhǎng)度向量 char VMAX_VERTEX_NUM=A,B,C,D,E,F,G,H,I,J,K;int aMAX_VERTEX_NUMMAX_VERTEX_NUM= /初始化 0,50,200,100,MAX_INT,MAX_INT,MAX_INT,MAX_INT,MAX_INT,MAX_INT,MAX_INT,。
10、50,0,100,MAX_INT,MAX_INT,MAX_INT,MAX_INT,MAX_INT,MAX_INT,MAX_INT,MAX_INT,200,100,0,MAX_INT,MAX_INT,100,50,MAX_INT,MAX_INT,MAX_INT,MAX_INT,100,MAX_INT,MAX_INT,0,500,200,MAX_INT,MAX_INT,MAX_INT,MAX_INT,MAX_INT,MAX_INT,MAX_INT,MAX_INT,500,0,300,MAX_INT,300,MAX_INT,300,500,MAX_INT,MAX_INT,100,200,300,0,。
11、400,200,100,MAX_INT,MAX_INT, MAX_INT,MAX_INT,MAX_INT,MAX_INT,MAX_INT,400,0,100,300,MAX_INT,MAX_INT,MAX_INT,MAX_INT,MAX_INT,MAX_INT,200,200,100,0,MAX_INT,400,MAX_INT,MAX_INT,MAX_INT,50,MAX_INT,MAX_INT,100,300,MAX_INT,0,MAX_INT,MAX_INT,MAX_INT,MAX_INT,MAX_INT,MAX_INT,300,MAX_INT,MAX_INT,400,MAX_INT,0,。
12、300,MAX_INT,MAX_INT,MAX_INT,MAX_INT,500,MAX_INT,MAX_INT,MAX_INT,MAX_INT,300,0;for(i=0;im;i+)for(j=0;jm;j+)G.Aij=aij; printf(*n);printf(* *n);printf(* *n);printf(* 歡迎使用南昌師范學(xué)院校園咨詢系統(tǒng)!*n);printf(* *n );printf(* *n );printf(*n);printf(n);while(1)printf(1.景點(diǎn)信息查詢請(qǐng)按“1”鍵:n);printf(2.景點(diǎn)最短路徑查詢(弗洛伊德算法)請(qǐng)按“2”鍵:n)。
13、;printf(3.景點(diǎn)最短路徑查詢(迪杰斯特拉算法)請(qǐng)按“3”鍵:n);printf(4.校內(nèi)景點(diǎn)地圖查詢請(qǐng)按“4”鍵:n);printf(5.退出系統(tǒng)請(qǐng)按“5”鍵 :n);printf(請(qǐng)選擇:n);scanf(%c,&kk);switch(k)case1:printf(景點(diǎn)介紹查詢n);introduce(scenery);break;case2:printf(景點(diǎn)最短路徑查詢(弗洛伊德算法)n);shortdistance(&G,path,D,11);break;case5:printf(謝謝使用!n);exit(0);return 0;六、 測(cè)試數(shù)據(jù)6.1調(diào)試程序所用數(shù)據(jù)6.2程序的。
14、調(diào)試結(jié)果七、 總結(jié)經(jīng)過小組同學(xué)的努力,我們終于結(jié)束了這次的課程設(shè)計(jì),雖然我們盡了很大的努力,但是其中仍顯現(xiàn)出許多的不足。其中在處理查詢兩景點(diǎn)最短路徑這一問題時(shí):一開始對(duì)于題目的閱讀不夠仔細(xì),將隨機(jī)的當(dāng)前位置當(dāng)成了,一進(jìn)校門的位置作為與其他建筑物的路徑距離。浪費(fèi)了一些時(shí)間,之后與重新思考思路。所以由此發(fā)現(xiàn)對(duì)于需求的正確分析確實(shí)很重要。另外經(jīng)過這次課程設(shè)計(jì),我對(duì)程序中算法的概念理解的更加透徹。算 法是程序中必不可少的部分,它是指解題方案的準(zhǔn)確而完整的描述,是一系列解決問題的清晰指令,算法代表著用系統(tǒng)的方法描述解決問題的策略機(jī)制。不同的算法可能用不同的時(shí)間、空間或效率來完成同樣的任務(wù)。同時(shí),在選擇 算法時(shí)必須考慮算法的時(shí)間復(fù)雜度和空間復(fù)雜度,這樣才能讓程序正常,高效的運(yùn)行。程.在計(jì)算機(jī)科學(xué)中,數(shù)據(jù)結(jié)構(gòu)不僅是一般程序設(shè)計(jì)(特別是非數(shù)值計(jì)算的程序設(shè)計(jì))的基礎(chǔ),而且是設(shè)計(jì)和實(shí)現(xiàn)編譯程序、操作系統(tǒng)、數(shù)據(jù)庫(kù)系統(tǒng)及其它系統(tǒng)程序和大型應(yīng)用程序的重要基礎(chǔ)。以上就是我們課程設(shè)計(jì)的全部?jī)?nèi)容。
總結(jié)
以上是生活随笔為你收集整理的校园导游java版,校园导游系统Word版的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 又一款千元机!三星Galaxy A14
- 下一篇: 导入功能 php,php Excel 导