




已閱讀5頁,還剩3頁未讀, 繼續(xù)免費(fèi)閱讀
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
無向圖的深度遍歷實(shí)驗(yàn)報告系別計(jì)算機(jī)系班級學(xué)號姓名課程名稱數(shù)據(jù)結(jié)構(gòu)實(shí)驗(yàn)日期實(shí)驗(yàn)名稱圖的遍歷成績實(shí)驗(yàn)?zāi)康模?.掌握圖的結(jié)構(gòu)特征,以及鄰接矩陣和鄰接表存儲結(jié)構(gòu)的特點(diǎn)和實(shí)現(xiàn)。2.掌握在鄰接矩陣或鄰接表存儲結(jié)構(gòu)下圖的深度優(yōu)先和廣度優(yōu)先遍歷算法思想及其程序?qū)崿F(xiàn)。實(shí)驗(yàn)條件:計(jì)算機(jī)一臺,Visual C+6.0實(shí)驗(yàn)內(nèi)容:1. 問題描述以鄰接矩陣或鄰接表為存儲結(jié)構(gòu),利用深度優(yōu)先搜索算法或廣度優(yōu)先搜索算法遍歷一個無向圖。給出遍歷序列,若該圖不連通,給出其連通分量的個數(shù)和各連通分量的遍歷序列。2. 數(shù)據(jù)結(jié)構(gòu)類型定義采用鄰接矩陣為存儲結(jié)構(gòu):typedef struct ArcNode int adj;ArcNode;/鄰接矩陣元素的定義typedef struct VertexData vertexMAX_VERTEX_NUM;/為頂點(diǎn)的集合 ArcNode arcsMAX_VERTEX_NUMMAX_VERTEX_NUM; int vexnum,arcnum;/vexnum為頂點(diǎn)數(shù),arcnum為弧數(shù)AdjMatrix; /鄰接矩陣的定義3. 模塊劃分(1) 創(chuàng)建一個無向圖以鄰接矩陣為存儲結(jié)構(gòu):void CreateUDN(AdjMatrix *G)(2) 鄰接矩陣的定位:int LocateVertex(AdjMatrix *G,VertexData v)(3) 深度優(yōu)先遍歷:void DepthFirstSearch(AdjMatrix G,int v)(4) 無向圖的遍歷:void TraverseGraph(AdjMatrix G)(5) 主函數(shù): void main()4. 詳細(xì)設(shè)計(jì)5. #include 6. #include 7. #include8. #define OK 19. #define ERROR 010. #define FALSE 011. #define TRUE 112. #define MAX_VERTEX_NUM 10013. int visitedMAX_VERTEX_NUM;14. typedef int AdjType;15. typedef int VertexData;16. typedef enumDG,DN,UDG,UDNGraphKind;17. typedef struct ArcNode18. AdjType adj;19. ArcNode;20. typedef struct21. VertexData vertexMAX_VERTEX_NUM;22. ArcNode arcsMAX_VERTEX_NUMMAX_VERTEX_NUM;23. int vexnum,arcnum;24. AdjMatrix;25. int LocateVertex(AdjMatrix *G,VertexData v)26. int j=ERROR,k;27. for(k=0;kvexnum;k+)28. if(G-vertexk=v)29. j=k;break;30. return (j);31. 32.33. int GreateUDN(AdjMatrix *G)34. int i,j,k;35. VertexData v1,v2;36. printf(輸入圖的頂點(diǎn)數(shù)和弧數(shù):n);37. scanf(%d,%d,&G-vexnum,&G-arcnum);38. getchar();39. for(i=0;ivexnum;i+)40. 41. for(j=0;jvexnum;j+)42. G-arcsij.adj=FALSE;43. 44. printf(輸入圖的頂點(diǎn):n);45. for(i=0;ivexnum;i+)46. scanf(%d,&G-vertexi);47. 48. for(k=0;karcnum;k+)49. 50. printf(輸入一條弧的兩個頂點(diǎn):);51. scanf(%d,%d,&v1,&v2);52. getchar();53. i=LocateVertex(G,v1);54. j=LocateVertex(G,v2);55. G-arcsij.adj=1;56. G-arcsji.adj=1;57. 58. return(OK);59. 60.61.62. void DepthFirstSearch(AdjMatrix G,int v)63. int j;64. printf(%d,G.vertexv);65. printf(n);66. visitedv=TRUE;67. for(j=0;jG.vexnum;j+)68. if(!visitedj&G.arcsvj.adj=1)69. DepthFirstSearch(G,j);70. 71. void TraverseGraph(AdjMatrix G)72. int i;73. for(i=0;iG.vexnum;i+) visitedi=FALSE;74. for(i=0;iG.vexnum;i+)75. if(!visitedi) DepthFirstSearch(G,i);76. 77.78. int main()79. int i,j;80. AdjMatrix G;81. GreateUDN(&G);82. printf(此無向圖的深度遍歷為:);83. TraverseGraph(G);84. printf(輸出鄰接矩陣n);85. for(i=0;iG.vexnum;i+)86. 87. for(j=0;jG.vexnum;j+)88. 89. printf(%d ,G.arcsij.adj);90. 91. printf(n);92. return 0;93. 94.95. 測試數(shù)據(jù)及結(jié)果第一組測試: 輸入數(shù)據(jù):頂點(diǎn):1,2 預(yù)測結(jié)果:輸出結(jié)點(diǎn)數(shù)據(jù):1,2 輸出鄰接矩陣 0 1 1 0實(shí)際結(jié)果:第二組測試: 輸入數(shù)據(jù):頂點(diǎn):0,1,2,3,4 預(yù)測結(jié)果:輸出結(jié)點(diǎn)數(shù)據(jù):0,1,2,3,4輸出鄰接矩陣 0 1 1 1 0 1 0 0 1 0 1 0 0 1 1 1 1 1 0 1 0 0 1 1 0 實(shí)際結(jié)果:第三組測試:輸入數(shù)據(jù):頂點(diǎn):0,1,2,3,4 5 6 預(yù)測結(jié)果:輸出結(jié)點(diǎn)數(shù)據(jù):0123456輸出鄰接矩陣 0 1 1 1 1 0 0 1 0 1 0
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025如何撰寫借調(diào)合同范本
- 傳染病的社區(qū)預(yù)防與管理
- 宮外孕護(hù)理要點(diǎn)
- 中班課間及游戲安全管理規(guī)范
- 預(yù)防傳染病毒
- 支架病人護(hù)理查房
- 2025年藥事管理學(xué)試題
- 口腔癌患者口腔護(hù)理規(guī)范
- 帕金森的生活護(hù)理
- 新質(zhì)生產(chǎn)力安全生產(chǎn)
- 數(shù)據(jù)中心運(yùn)維服務(wù)投標(biāo)方案(技術(shù)標(biāo))
- 2025屆高考英語復(fù)習(xí)讀后續(xù)寫練習(xí):雪山遇險:絕境中盼來的生機(jī)+課件
- 2025-2030全球等離子體仿真軟件行業(yè)調(diào)研及趨勢分析報告
- 2025年全年日歷-含農(nóng)歷、國家法定假日-帶周數(shù)豎版
- 2025中國華電集團(tuán)限公司校招+社招高頻重點(diǎn)提升(共500題)附帶答案詳解
- 中學(xué)防災(zāi)減災(zāi)宣傳周活動實(shí)施方案
- (高清版)DB41∕T 2364-2022 工業(yè)企業(yè)揮發(fā)性有機(jī)物泄漏檢測與修復(fù)技術(shù)規(guī)范
- 護(hù)理不良事件根本原因RCA分析-中醫(yī)熱奄包治療燙傷
- 人教版九年級數(shù)學(xué)上冊一元二次方程《一元二次方程整 理與復(fù)習(xí)》示范公開課教學(xué)課件
- 平安證券公司融資融券業(yè)務(wù)方案設(shè)計(jì)
- 2024秋期國家開放大學(xué)??啤兑簤号c氣壓傳動》一平臺在線形考(形考任務(wù)+實(shí)驗(yàn)報告)試題答案
評論
0/150
提交評論