下載本文檔
版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、用普里姆算法從頂點U出發(fā)構(gòu)造網(wǎng)G的最小生成樹為實現(xiàn)此算法需附設一個輔助數(shù)組closedge,用以記錄從U到V-U具有最小代價的邊。 對每個頂點viEV-U ,在輔助數(shù)組中存在一個相應分量closedgei-l,它包括兩個域:lowcost 和 adj vex olowcost域:存儲最小代價的邊上的權值,即:closedgei-l.lowcost=nihi(cost(u, vi )|uEUcost(u,vi)表示邊(u,vi)上的權值。若某頂點加入到U中,則此時置lowcost域為0,表示該 頂點并入U中。adjvex域:存儲依附于該邊在U中的頂點。顯然,每加入一個頂點到U中,closedge
2、數(shù)組 就會發(fā)生相應的變化。用普里姆算法從頂點U出發(fā)構(gòu)造網(wǎng)G的最小生成樹stmct Closedge( vertextype adjvex; U 集中的頂點int lowcost; / 邊的權值 closedgeMAX.VERTEX.NUM;void MiniSpanTiee_P(mgraph Q vertextype u)( int k = Locate(&G;u );若圖G中存在頂點u,則返回u在圖中的存儲位置for (iiitj=O; jG.vexiium; +j)輔助數(shù)組初始化】f(j!=k) closedgej.adjvex=u;closedge!j.lowcost=GarcskIj;
3、closedgek.lowcost = 0;/ 初始,U=ufor (mt i=l; iHG.vexskH, ”;/輸出生成樹上一條邊closedgefk .lowcost=0; 第 k 頂點并入 U 集for (j=0; jG.vexiium; +j)修改其它頂點的最小邊if (G.arcsk j closedge j . lowcost)( clo sedge j . adj vex= Gvexsk;closedgej.lowcost=G.aicskj;)/if) /for /MiniSpaiiTree_P查找最小未被訪問的邊mt niuumum(mgraph G, Closedge cl
4、osedge n) ( int k;fbr(int i=0; iG. vexiium;i-H-)if(closedgei.lowcost!=0) k=i; break; fbr( ;iG.vexnum:i+)if(closedgei. lowcost! =0&closedgei.lowcostclosedgek.lowcost) k=i;return k;uit distn; /disti存放頂點i的當前最短路徑長度charpathnn+1 ; /pathi+存放頂點i的當前最短路徑。bool flagn; 表示當前最短路徑是否己經(jīng)被選擇void ShortestPath.DJS(mgraph
5、 g, mt vO)( mtchar tail2;fbr (i =0; ig.vexiium; i+) ( flagi=false;disti=g.aicsOi;pathi0=v0+H;pathil=g.vexsi;pathW;fbr(mt t=l; tg.vexiium; t+)/求vO到其余n-1個頂點的最短路徑 ( niiii=MAX;fbr (1=0; ig.vexiium; i+)if (disti inm&flagi=false) k = i: nuii=disti; flagk=tine;fbr (i =0; ig.vexiium; i+)if (distk+g.arcskidi
6、sti) disti=distk+ g.arcski; strcpy(pathi,pathk);tailO=i+a;taill=,(); sticat(pathijail); )for (i =0; ig.vexiium; i+) coutpathiH Mdistiendl;拓撲排序:操作方法:(1)選取一個沒有前驅(qū)的頂點,輸出它,并從AOV中網(wǎng)中刪除此頂點以及所有以它 為尾的孤。(2)重復(1)直至輸出所有結(jié)點統(tǒng)計有向圖鄰接表各頂點的入度void uiit_iiidegree(ALGraph G)fbr(i=O:iGvexiium;i+)mdegreei=O;fbr(i=O; iadjvex
7、+; p=p-nextarc;/fbr /imciiidegree取入度為零的點vmt getzerodegree (ALGrapg G) ( fbr(i=O;iadj vex;elsereturn-!;5 . NextAdjmt NextAdj (ALGrapg G .int v int w)(p=G vertices v .firs taic;while(p & p-adjvex! =w)p=p-nextaic;f(p)return p-nextarc-adjvex;elsereturn-!;6.算法實現(xiàn)m=0:Hut_mdegree(G);vr=getzerodegree(G)wliile(v!=-l)(
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 小學日出作文600字7篇
- 護理工作總結(jié)15篇
- 《寒冷的冬天》教案
- 工傷簡單辭職報告(集錦7篇)
- 網(wǎng)絡編程協(xié)議課程設計
- 2018年全國兩會學習解讀
- 消費電子行業(yè)專題報告:創(chuàng)新驅(qū)動需求復蘇 業(yè)績與估值有望修復
- 兒童看護服務合同(2篇)
- 河南省安陽市林州城郊鄉(xiāng)第六職業(yè)中學高二地理聯(lián)考試題含解析
- 煤炭經(jīng)營場地出租合同范本
- 腳手架計算書-
- 部編版八年級語文上冊《句子的成分》定稿課件
- 清華大學《大學物理》習題庫試題及答案09磁學習題
- 目標成本限額指標
- 礦山測量課程設計
- 最易懂的杰普遜航圖學習課件
- 高速公路瀝青路面設計計算書(Word)
- 加油機拆卸安裝方案
- 國畫美術興趣小組活動記錄(共9頁)
- 環(huán)境隱患排查治理檔案臺賬
- 《輪滑》專項體育課教學大綱、教學計劃
評論
0/150
提交評論