freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于無向圖的校園導(dǎo)游系統(tǒng)_數(shù)據(jù)結(jié)構(gòu)課程設(shè)計(jì)報(bào)告(編輯修改稿)

2024-10-04 17:41 本頁面
 

【文章內(nèi)容簡介】 { if(k 5 == 0) { coutendl。 cout39。\t39。[k].name。 } else { cout39。\t39。[k].name。 } }將景點(diǎn)的名稱打印在顯示屏上,最后是一個(gè) switch()。的選擇語句,提示游客根據(jù)選擇來進(jìn)入到相關(guān)的操作界面實(shí)現(xiàn)程序的基本功能。 查找介紹函數(shù)的詳細(xì)設(shè)計(jì) 當(dāng)游客選擇了要查找景點(diǎn)的信息的介紹這一項(xiàng)功能的時(shí)候,程序就會調(diào)用DisIntroduction(G)。函數(shù)進(jìn)入到查找景點(diǎn)的介紹的界面,當(dāng)游客輸入了需要查找的景點(diǎn)的名稱的時(shí)候,程序利用 for()。循環(huán)語句來查找是否有這個(gè)景點(diǎn)for(int i=0。i。i++) { int m = strcmp([i].name,n1)。 if(m==0) { v1=i。 count1=count1+1。 } 重慶科技學(xué)院 本科生課程設(shè)計(jì) 詳細(xì)設(shè)計(jì) 6 },找到將它的編號返回,并輸出它的介紹,沒有找到這輸出錯(cuò)誤提示,提醒游客進(jìn)行相關(guān)的操作進(jìn)入正確的操作過程當(dāng)中。 查找最短路徑函數(shù)的詳細(xì)設(shè)計(jì) 當(dāng)游客選擇了要查找兩個(gè)景點(diǎn)之間的最短距離這一項(xiàng)功能的時(shí)候,程序就會調(diào)用 DisPath(G);函數(shù)進(jìn)入到查找兩個(gè)景點(diǎn)之間的最短距離的操作界面當(dāng)中,當(dāng)游客輸入了兩個(gè)景點(diǎn)的名稱過 后,程序會調(diào)用 strcmp()。函數(shù)查看是否有這兩個(gè)景點(diǎn),如果有則返回他們各自的編號,并調(diào)用 ShortPath_DIJ(G,v1,v2)。函數(shù)進(jìn)入到查找最短路徑問題的程序當(dāng)中。 for(v=0。v。v++)//各對節(jié)點(diǎn)之間初始已知路徑及距離 { final[v]=FALSE。//從 V出發(fā)的最短路徑的空集合 D[v]=[v0][v]。//從 V 出發(fā)到圖上其余各個(gè)定點(diǎn) v0 可能到達(dá)的最短路徑的初始值 for(w=0。w。w++) { P[v][w]=FALSE。//設(shè)空路徑 } if(D[v]MAXNUM) { P[v][v0]=TRUE。 P[v][v]=TRUE。 } } D[v0]=0。 final[v0]=TRUE。 int a[20]。 for(i=0。i。i++)//對 Path[i][j]進(jìn)行初始化,使其值全部為 1000,便于后期的判斷 { for(j=0。j。j++) { Path[i][j]=1000。 } } for(i=0。i。i++)//對數(shù)組進(jìn)行初始化,以便對 Path[i][j]進(jìn)行描述 { a[i]=1。 重慶科技學(xué)院 本科生課程設(shè)計(jì) 詳細(xì)設(shè)計(jì) 7 } for(v=0。v。v++)//各條路線的初始節(jié)點(diǎn)為 v0 { Path[v][0]=v0。 } //開始主循環(huán),每次求解得到 v0 到某個(gè) v 頂點(diǎn)的最短路徑,并加入到 S 集合中 for(i=1。i。i++)//其余 1個(gè)頂點(diǎn) { m=MAXNUM。//當(dāng)前所知的離 v0最近的距離 for(w=0。w。w++) { if(!final[w])//w 頂點(diǎn)在 VS中 { if(D[w]m)//w 頂點(diǎn)離 v0頂點(diǎn)更近 { v=w。 m=D[w]。 } } } Path[v][a[v]]=v。//離 v0 頂點(diǎn)最近的 v 加入 s集合 final[v]=TRUE。 for(w=0。w。w++)//更新當(dāng)前最短路徑及距離 { if((!final[w])amp。amp。(m+[v][w]D[w])) { D[w]=m+[v][w]。//修改當(dāng)前的最短路徑的值 int k0=1。 a[w]=1。 while(Path[v][k0]!=1000) //如果上述條件成立, Path[w]路徑需要改變,因?yàn)閺?v0 到 w 的路徑顯然經(jīng)過了 v0 和 v 之間的所有的點(diǎn)(包括 v) { Path[w][k0]=Path[v][k0]。 k0++。 a[w]++。 } } } } cout兩個(gè)景點(diǎn)之間的最短路徑為 :39。\t39。 int k=0。 while(Path[v2][k]!=1000) 重慶科技學(xué)院 本科生課程設(shè)計(jì) 詳細(xì)設(shè)計(jì) 8 { int m=Path[v2][k]。 cout[m].name39。\t39。 k++。 } coutendl。 cout兩個(gè)景點(diǎn)之間的最短距離為 : D[v2]Mendl。 cout請選擇要進(jìn)行的操作 (I:查詢景點(diǎn)信息, P:查詢兩個(gè)景點(diǎn)之間的最短路徑, Q:退出 )endl。 (1)假設(shè)用帶權(quán)的鄰接矩陣 arcs 來表示帶權(quán)的有向圖, arcs[i][j]表示?。?vi,vj)上的權(quán)值。若 (vi,vj)不存在,則置 arcs[i][j]為無窮大。 S為已找到從 v 出發(fā)的最短路徑的終點(diǎn)集合,它的初始狀態(tài)為空集。那么,從 v 出發(fā)到圖上其余各個(gè)定點(diǎn) vi可能到達(dá)的最短路徑長度的初始值為: D[i] = arcs[v][i]。 (2)選擇 vj,使得 D[j] = Min{D[i] | vi ∈ V – S}vj 就是當(dāng)前求得的一條從 v 出發(fā)的最短路徑的終點(diǎn)。令 S = S ∪ {j}。 (3)修改從 v 出發(fā)到集合 V – S 上任意頂點(diǎn) vk可到達(dá)的最短路徑的長度。如果 D[j] + arcs[j][k] D[k]則修改 D[k]為 D[k] = D[j]+arcs[j][k]。 (4)重復(fù)操作 (2)、 (3)共 n – 1 次,由此求得從 v 到圖上其余各個(gè)頂點(diǎn)的最短路徑是依路徑長度遞增的序列。從而求得了從一個(gè)景點(diǎn)到另一個(gè)景點(diǎn)的最短路徑的問題。 退出函數(shù)的詳細(xì)設(shè)計(jì) 對于退出函數(shù),當(dāng)游客選擇了退出這一個(gè)操作的時(shí)候,程序就會調(diào)用 Exit()。函數(shù)從而進(jìn)入到退出函數(shù)的界面 void Exit() //退出 { cout歡迎下次繼續(xù)使用 !endl。 exit(0)。 }程序會提示游客感謝使 用,歡迎下次繼續(xù)使用的提示語,然后調(diào)用 exit(0)。函數(shù)實(shí)現(xiàn)退出主函數(shù)的功能。 數(shù)據(jù)結(jié)構(gòu)的詳細(xì)設(shè)計(jì) 本軟件的數(shù)據(jù)結(jié)構(gòu)包括 3 個(gè)部分: 1. 鄰接矩陣 重慶科技學(xué)院 本科生課程設(shè)計(jì) 詳細(xì)設(shè)計(jì) 9 typedef int AdjMatrix[MAX_VERTEX_NUM][MAX_VERTEX_NUM]。 定義一個(gè) 鄰接矩陣 ,用 鄰接矩陣 來定義和儲存邊的相關(guān)信息。 2. 頂點(diǎn)的結(jié)構(gòu)體 typedef struct Vertex//定義圖中頂點(diǎn)的數(shù)據(jù)類型 { int num。//景點(diǎn)編號 char name[14]。//景點(diǎn)名稱 char introduction[100]。//景點(diǎn)介紹 }Vertex。 定義一個(gè)頂點(diǎn)的結(jié)構(gòu)體,用來儲存景點(diǎn)的編號、景點(diǎn)得名稱和景點(diǎn)的介紹等關(guān)于景點(diǎn)的信息。 typedef struct //定義圖的數(shù)據(jù)類型 { Vertex vexs[MAX_VERTEX_NUM]。//頂點(diǎn)的結(jié)構(gòu)體 AdjMatrix arcs。//邊的 鄰接矩陣 int vexnum,arum。//頂點(diǎn)的個(gè)數(shù),邊的個(gè)數(shù) }MGraph。 定義一個(gè)圖的結(jié)構(gòu)體,用來儲存頂點(diǎn)的信息、邊的信息、頂點(diǎn)的個(gè)數(shù)和邊的個(gè)數(shù)等相關(guān)的信息便于我們以后在用的時(shí)候能夠方便快捷的調(diào)用。 定義好這些結(jié)構(gòu)體后,當(dāng)我們以后需要調(diào)用的時(shí)候,我們就能夠方便快捷的調(diào)用這些結(jié)構(gòu)體,從而使得我們在運(yùn)行程序的時(shí)候能夠更加的快速能夠提高我們的程序的運(yùn)行效率,大大的節(jié)省了我們的時(shí)間還使得程序變得更加的簡單。 重慶科技學(xué)院 本科生課程設(shè)計(jì) 軟件測試 10 4 軟件 測試
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1