(完整word版)數(shù)據(jù)結(jié)構(gòu)實(shí)驗(yàn)報(bào)告圖與景區(qū)(word文檔良心出品).doc
《(完整word版)數(shù)據(jù)結(jié)構(gòu)實(shí)驗(yàn)報(bào)告圖與景區(qū)(word文檔良心出品).doc》由會(huì)員分享,可在線閱讀,更多相關(guān)《(完整word版)數(shù)據(jù)結(jié)構(gòu)實(shí)驗(yàn)報(bào)告圖與景區(qū)(word文檔良心出品).doc(11頁珍藏版)》請(qǐng)?jiān)趨R文網(wǎng)上搜索。
1、學(xué)生學(xué)號(hào) 實(shí)驗(yàn)課成績學(xué) 生 實(shí) 驗(yàn) 報(bào) 告 書實(shí)驗(yàn)課程名稱數(shù)據(jù)結(jié)構(gòu)與算法綜合實(shí)驗(yàn)開課學(xué)院計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院指導(dǎo)教師姓名學(xué)生姓名學(xué)生專業(yè)班級(jí)2017-2018學(xué)年第2學(xué)期10實(shí)驗(yàn)課程名稱: 數(shù)據(jù)結(jié)構(gòu)與算法綜合實(shí)驗(yàn) 實(shí)驗(yàn)項(xiàng)目名稱圖與景區(qū)信息管理系統(tǒng)實(shí)踐報(bào)告成績實(shí)驗(yàn)者專業(yè)班級(jí)組別同組者 完成日期2018年5月23日第一部分:實(shí)驗(yàn)分析與設(shè)計(jì)(可加頁)一、 實(shí)驗(yàn)?zāi)康暮鸵?. 目的=掌握?qǐng)D的定義和圖的存儲(chǔ)結(jié)構(gòu)。=掌握?qǐng)D的創(chuàng)建方法和圖的應(yīng)用=使用C+語言,定義圖的數(shù)據(jù)結(jié)構(gòu),結(jié)合迭代開發(fā)思路實(shí)現(xiàn)“景區(qū)信息管理系統(tǒng)”。=掌握?qǐng)D的兩種遍歷方法和應(yīng)用。=使用C+語言和深度優(yōu)先算法實(shí)現(xiàn)“旅游景點(diǎn)導(dǎo)航”功能開發(fā)。=
2、掌握迪杰斯特拉算法和應(yīng)用。=使用C+語言和迪杰斯特拉算法實(shí)現(xiàn)“搜索最短路徑”功能開發(fā)。=理解最小生成樹的概念,掌握普里姆算法和應(yīng)用。=使用C+語言和最小生成樹算法實(shí)現(xiàn)“鋪設(shè)電路規(guī)劃”功能開發(fā)。2.要求=開發(fā)景區(qū)信息管理系統(tǒng),對(duì)景區(qū)的信息進(jìn)行管理。=使用圖的數(shù)據(jù)結(jié)構(gòu)來保存景區(qū)景點(diǎn)信息,為用戶提供創(chuàng)建圖、查詢景點(diǎn)信息、旅 游景點(diǎn)導(dǎo)航、搜索最短路徑、鋪設(shè)電路規(guī)劃等功能。二、 分析與設(shè)計(jì)(1) 創(chuàng)建工程讀取文件信息,創(chuàng)建圖,輸出周邊景點(diǎn)信息讀取景區(qū)信息文件,采用圖的存儲(chǔ)結(jié)構(gòu),創(chuàng)建景區(qū)景點(diǎn)圖,查詢景點(diǎn)信息。(2)迭代開發(fā),進(jìn)行深度優(yōu)先搜索,實(shí)現(xiàn)旅游景點(diǎn)導(dǎo)航。(3)繼續(xù)迭代,采用迪杰斯特拉算法、普里姆算法
3、,實(shí)現(xiàn)搜索最短路徑和電路鋪 設(shè),開發(fā)景區(qū)信息管理系統(tǒng)。1. 數(shù)據(jù)結(jié)構(gòu)的設(shè)計(jì)=記錄頂點(diǎn)信息的結(jié)構(gòu)體struct Vexint num;/景點(diǎn)編號(hào)char name20;/景點(diǎn)名字char desc1024;/景點(diǎn)介紹;=記錄邊的信息的結(jié)構(gòu)體struct Edgeint vex1;/邊的第一個(gè)頂點(diǎn)int vex2;/邊的第二個(gè)頂點(diǎn)int weight;/權(quán)值;=用來保存路徑的鏈表的結(jié)構(gòu)體typedef struct Pathint vexs20;/保存一條路徑Path *next;*PathList;=CGraph類用來實(shí)現(xiàn)相應(yīng)功能的方法class CGraphprivate:int m_aAdj
4、Matrix2020;/鄰接矩陣Vex m_aVexs20;/頂點(diǎn)信息數(shù)組int m_nVexNum;/當(dāng)前圖的頂點(diǎn)個(gè)數(shù)public:void Init(void);bool InsertVex(Vex sVex);bool InsertEdge(Edge sEdge);Vex GetVex(int nVex);int GetVexnum(void);int FindEdge(int nVex,Edge aEdge);void DFS(int nVex,bool aVisited,int &nIndex,PathList &pList);void DFSTraverse(int nVex,Pa
5、thList &pList);int FindShortPath(int nVexStart,int nVexEnd,Edge aPath);void FindMinTree(Edge aPath);2.核心算法設(shè)計(jì)(1)輸出周邊景點(diǎn)信息Input:操作表號(hào)與景點(diǎn)編號(hào)Output:輸入景點(diǎn)的周邊景點(diǎn)信息Process:int CGraph:FindEdge(int nVex,Edge aEdge)int k=0;for(int i=0;ivexsnIndex+=nVex;/訪問頂點(diǎn)/判斷是否所有節(jié)點(diǎn)都已訪問過int nVexNum=0;for(int i=0;inext=(PathList)m
6、alloc(sizeof(Path);for(int i=0;inext-vexsi=pList-vexsi;pList=pList-next;pList-next=NULL;else/按頂點(diǎn)的存儲(chǔ)順序,查找當(dāng)前頂點(diǎn)相連的的頂點(diǎn)for(int i=0;i0)/以該頂點(diǎn)為起點(diǎn)遍歷剩下的頂點(diǎn)DFS(i,aVisited,nIndex,pList);aVisitedi=false;/訪問狀態(tài)置空nIndex-;/回溯void CGraph:DFSTraverse(int nVex,PathList &pList)int nIndex=0;bool aVisitedMAX_VERTEX_NUM=fal
7、se;DFS(nVex,aVisited,nIndex,pList);(3) Dijkstra算法搜索最短路徑Input: 操作表號(hào)與起始景點(diǎn)編號(hào)Output: 從起始頂點(diǎn)到終點(diǎn)的最短路徑Process:int CGraph:FindShortPath(int nVexStart,int nVexEnd,Edge aPath)int nShortPathMAX_VERTEX_NUMMAX_VERTEX_NUM;/保存最短路徑int nShortDistanceMAX_VERTEX_NUM;/保存最短距離bool aVisitedMAX_VERTEX_NUM;/判斷某頂點(diǎn)是否已經(jīng)加入到最短路徑/
8、初始化int v;for(v=0;vm_nVexNum;v+)aVisitedv=false;if(m_aAdjMatrixnVexStartv!=0)/初始化該頂點(diǎn)到其他頂點(diǎn)的最短距離,默認(rèn)為兩點(diǎn)間的距離nShortDistancev=m_aAdjMatrixnVexStartv;else/如果頂點(diǎn)i和nVexStart不相連,則最短距離設(shè)為最大值 nShortDistancev=0x7FFFFFFF;nShortPathv0=nVexStart;/起始點(diǎn)為nVexStartfor(int j=1;jm_nVexNum;j+)nShortPathvj=-1;/初始化最短路徑/初始化,nVex
- 1.請(qǐng)仔細(xì)閱讀文檔,確保文檔完整性,對(duì)于不預(yù)覽、不比對(duì)內(nèi)容而直接下載帶來的問題本站不予受理。
- 2.下載的文檔,不會(huì)出現(xiàn)我們的網(wǎng)址水印。
- 3、該文檔所得收入(下載+內(nèi)容+預(yù)覽)歸上傳者、原創(chuàng)作者;如果您是本文檔原作者,請(qǐng)點(diǎn)此認(rèn)領(lǐng)!既往收益都?xì)w您。
下載文檔到電腦,查找使用更方便
10 積分
下載 | 加入VIP,下載共享資源 |
- 配套講稿:
如PPT文件的首頁顯示word圖標(biāo),表示該P(yáng)PT已包含配套word講稿。雙擊word圖標(biāo)可打開word文檔。
- 特殊限制:
部分文檔作品中含有的國旗、國徽等圖片,僅作為作品整體效果示例展示,禁止商用。設(shè)計(jì)者僅對(duì)作品中獨(dú)創(chuàng)性部分享有著作權(quán)。
- 關(guān) 鍵 詞:
- 完整 word 數(shù)據(jù)結(jié)構(gòu) 實(shí)驗(yàn) 報(bào)告 景區(qū) 文檔 良心 出品
鏈接地址:http://zhizhaikeji.com/p-43776145.html