景區(qū)旅游管理系統(tǒng)

景區(qū)旅游管理系統(tǒng)

ID:33414540

大?。?4.00 KB

頁數(shù):13頁

時(shí)間:2019-02-25

景區(qū)旅游管理系統(tǒng)_第1頁
景區(qū)旅游管理系統(tǒng)_第2頁
景區(qū)旅游管理系統(tǒng)_第3頁
景區(qū)旅游管理系統(tǒng)_第4頁
景區(qū)旅游管理系統(tǒng)_第5頁
資源描述:

《景區(qū)旅游管理系統(tǒng)》由會員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在應(yīng)用文檔-天天文庫。

1、景區(qū)旅游信息管理系統(tǒng)1.1.1項(xiàng)目需求在旅游景區(qū),經(jīng)常會遇到游客打聽從一個(gè)景點(diǎn)到另一個(gè)景點(diǎn)的最短路徑和最短距離,這類游客不喜歡按照導(dǎo)游圖的線路來游覽,而是挑選自己感興趣的景點(diǎn)游覽。為于幫助這類游客信息查詢,就需要計(jì)算出所有景點(diǎn)之間最短路徑和最短距離。算法采用迪杰斯特拉算法或弗洛伊德算法均可。建立一個(gè)景區(qū)旅游信息管理系統(tǒng),實(shí)現(xiàn)的主要功能包括制訂旅游景點(diǎn)導(dǎo)游線路策略和制訂景區(qū)道路鋪設(shè)策略。任務(wù)中景點(diǎn)分布是一個(gè)無向帶權(quán)連通圖,圖中邊的權(quán)值是景點(diǎn)之間的距離。?。?)景區(qū)旅游信息管理系統(tǒng)中制訂旅游景點(diǎn)導(dǎo)游線路策略,首先通過遍歷景點(diǎn),給出一個(gè)入口景點(diǎn),建立一個(gè)導(dǎo)游線路圖,導(dǎo)游線路圖用有向

2、圖表示。遍歷采用深度優(yōu)先策略,這也比較符合游客心理。?。?)為了使導(dǎo)游線路圖能夠優(yōu)化,可通過拓樸排序判斷圖中有無回路,若有回路,則打印輸出回路中的景點(diǎn),供人工優(yōu)化?!。?)在導(dǎo)游線路圖中,還為一些不愿按線路走的游客提供信息服務(wù),比如從一個(gè)景點(diǎn)到另一個(gè)景點(diǎn)的最短路徑和最短距離。在本線路圖中將輸出任意景點(diǎn)間的最短路徑和最短距離。?。?)在景區(qū)建設(shè)中,道路建設(shè)是其中一個(gè)重要內(nèi)容。道路建設(shè)首先要保證能連通所有景點(diǎn),但又要花最小的代價(jià),可以通過求最小生成樹來解決這個(gè)問題。本任務(wù)中假設(shè)修建道路的代價(jià)只與它的里程相關(guān)。因此歸納起來,本任務(wù)有如下功能模塊:  創(chuàng)建景區(qū)景點(diǎn)分布圖;  輸出景區(qū)

3、景點(diǎn)分布圖(鄰接矩陣)  輸出導(dǎo)游線路圖;  判斷導(dǎo)游線路圖有無回路;  求兩個(gè)景點(diǎn)間的最短路徑和最短距離;  輸出道路修建規(guī)劃圖。  主程序用菜單選項(xiàng)供用戶選擇功能模塊。 1.1.2設(shè)計(jì)流程主程序采用設(shè)計(jì)主菜單調(diào)用若干功能模塊,同時(shí)在主程序中定義兩個(gè)鄰接鏈表類型變量G和G1,作為調(diào)用子函數(shù)的參數(shù)?!〗▓D子模塊建立無向帶權(quán)圖,輸入頂點(diǎn)信息和邊的信息,輸出鄰接鏈表G。由于是無向邊,輸入一條邊時(shí)構(gòu)建兩條邊。  輸出圖子模塊:從鄰接鏈表g轉(zhuǎn)換成鄰接矩陣a,并輸出鄰接矩陣a。圖中邊的權(quán)值∞用32767表示。遍歷子模塊:通過遍歷圖G,只得到遍歷的頂點(diǎn)序列。我們先將頂點(diǎn)序列存在數(shù)組vex

4、中,然后再轉(zhuǎn)換成導(dǎo)游線路存入數(shù)組vex1中,最后生成導(dǎo)游線路圖G1(同樣用鄰接鏈表存儲,供拓樸排序用)。將遍歷頂點(diǎn)序列轉(zhuǎn)換成導(dǎo)游線路?! D10-43(a)(b)(c)三個(gè)無向圖的深度優(yōu)先搜索遍歷的結(jié)果均為v1→v2→v3→v4。但它們的導(dǎo)游線路圖卻不同。圖(a)的導(dǎo)游線路圖為v1→v2→v3→v4,與遍歷結(jié)果相同?! D(b)的導(dǎo)游線路圖為v1→v2→v3→v2→v4,圖(c)的導(dǎo)游線路圖為v1→v2→v3→v2→v1→v4?! ”闅v結(jié)點(diǎn)序列與導(dǎo)游線路圖轉(zhuǎn)換的策略:  設(shè)遍歷結(jié)果為v1→v2→…→vi→vi+1→…→vn  對于結(jié)點(diǎn)vi和vi+1,如果vi和vi+1存在邊,

5、則直接轉(zhuǎn)換?! 》駝t,加入邊vi→vi-1,如果vi-1和vi+1存在邊,則加入邊vi-1→vi+1。  再否則,加入邊vi-1→vi-2,如果vi-2和vi+1存在邊,則加入邊vi-2→vi+1?! ∪绻鹶i-2和vi+1還不存在邊,繼續(xù)回溯,一定能找到某個(gè)整數(shù)k(因?yàn)榫包c(diǎn)分布圖是連通圖),使得vi-k和vi+1存在邊,則加入邊vi-k→vi+1?! ≡诒救蝿?wù)中,轉(zhuǎn)換后的線路圖存于數(shù)組vex1中。流程圖見10-29。拓樸排序子模塊流程圖,見圖10-39源程序,參見10.7節(jié)的samp10-8.c。求最短路徑子模塊流程圖:見10-34。源程序,參見10.6節(jié)的samp10-6

6、.c。求最小生成樹子模塊流程圖:見19-33。源程序,參見10.6節(jié)的samp10-5.c。1.1.3數(shù)據(jù)結(jié)構(gòu)景點(diǎn)的信息包括景點(diǎn)的名稱和近鄰景點(diǎn)之間的通路和距離。用鄰接鏈表存儲景點(diǎn)分布圖的信息。(帶權(quán)無向)圖的鄰接鏈表  /***************************************************************//*程序功能:建立一個(gè)旅游景區(qū)管理系統(tǒng),實(shí)現(xiàn)旅游路線選擇   */  /*景區(qū)道路優(yōu)化等功能                   */  /*********************************************

7、******************/  #include“stdio.h”  #include“stdlib.h”  #include“string.h”  #defineMAX_EDGE_NUM100/*定義圖的最大邊數(shù)*/  #defineMAX_VERTEX_NUM20  #defineMAXNUM32767  typedefcharVertex_type[10];  typedefstructnode/*邊表結(jié)點(diǎn)*/  {    intadjvex;/*鄰接點(diǎn)域*/    intweight;

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動畫的文件,查看預(yù)覽時(shí)可能會顯示錯亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負(fù)責(zé)整理代發(fā)布。如果您對本文檔版權(quán)有爭議請及時(shí)聯(lián)系客服。
3. 下載前請仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時(shí)可能由于網(wǎng)絡(luò)波動等原因無法下載或下載錯誤,付費(fèi)完成后未能成功下載的用戶請聯(lián)系客服處理。