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

正文內(nèi)容

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

2025-07-07 22:35 本頁面
 

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