資源描述:
《算法與數(shù)據(jù)結(jié)構(gòu)課程設(shè)計(有向圖,無向圖,有向網(wǎng),無向網(wǎng)).doc》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在工程資料-天天文庫。
1、算法與數(shù)據(jù)結(jié)構(gòu)課程設(shè)計報告系(院):計算機科學學院專業(yè)班級:教技1001班姓名:戴征淼學號:201003886指導教師:詹澤梅設(shè)計時間:2012.6.16-2012.6.24設(shè)計地點:4號樓2號機房22/22目錄一、設(shè)計方案及實現(xiàn)過程******************第3頁二、實現(xiàn)代碼***********************************第4頁三、測試******************************************第19頁四、難點與收獲********************************第21頁22/22一、設(shè)計方案及
2、實現(xiàn)過程這次課程設(shè)計要求實現(xiàn)無向圖、有向圖、無向網(wǎng)以及有向網(wǎng)的一些基本操作以及應用,大體的方案是先進入界面后,選擇無向圖、有向圖、無向網(wǎng)、無向網(wǎng)中的一個,然后創(chuàng)建相應的圖或者網(wǎng),創(chuàng)建好后,在此基礎(chǔ)上選擇進行相關(guān)的操作,具體的函數(shù)放在main函數(shù)前面,通過多次函數(shù)調(diào)用已達到具體操作的實現(xiàn)。有向圖、無向網(wǎng)、有向網(wǎng)的操作和無向圖類似,在這里不一一列舉。流程圖如下:22/22一、實現(xiàn)代碼#include#include#definemaxlen10#definelarge999#definetrue1#definefalse0#defin
3、eok1#defineerror0#defineoverflow-2#definenull0typedefintstatus;#include#include#include#include#includeusingnamespacestd;#defineMAX_VERTEX_NUM20#defineMAX1000typedefstruct{inta[maxlen],b[maxlen],h[maxlen];charvexs[maxlen];intvexnum,arcnum;intk
4、ind;intarcs[maxlen][maxlen];}graph;typedefstructnode{intadjvex;intinfo;structnode*next;}edgenode;typedefstruct{intid;chardata;edgenode*link;}vexnode;typedefstruct{vexnodeadjs[maxlen];22/22intvexnum,arcnum;intkind;}adjlist;typedefstructqnode{intdata;structqnode*next;}linkqlist;typedefstr
5、uct{linkqlist*front;linkqlist*rear;}linkqueue;typedefstruct{intstack[maxlen];inttop;}stackstru;intcnull=-1;graphg;adjlistadjl;stackstru*t;stackstru*s;linkqueue*q;graphprintf_adjmatrix(graphg){inti,j;printf("鄰接矩陣:");printf("vertext");for(i=0;i6、tf("");for(i=0;i7、]=1;printf_adjmatrix(g);}voidcreate_1(graphg){//構(gòu)造無向圖inti,j,k,c=0;for(i=0;i