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

正文內(nèi)容

數(shù)據(jù)結(jié)構(gòu)課程設(shè)計(jì)報(bào)告---關(guān)鍵路徑(更新版)

2025-02-26 21:52上一頁面

下一頁面
  

【正文】 t[k].end。 k = 0。 j++。 //t[MAVX]數(shù)組用來存放代表關(guān)鍵活動(dòng)的邊的信息 int j = 0。 cout\n關(guān)鍵活動(dòng)有:endl。 //找第一個(gè)相鄰頂點(diǎn) while (p != NULL) { j = pvp。 i gn。 cout\t\t e\t l\t d \t timeendl。 for (int i = 0。 i gn。 //對(duì)于匯點(diǎn),置其vl = ve for (i = gn 1。 //對(duì)于源點(diǎn),置其ve = 0 for (i = 0。 ptime = t。 for( k = 1。 ge = e。 int i, j, k, n, e, t, sign。 //指向下一條弧的指針 }ArcNode。typedef struct arode//弧的結(jié)點(diǎn)結(jié)構(gòu)類型{ char start?!粲?jì)算出各事件及活動(dòng)的的相關(guān)信息:如每個(gè)事件的最早和最遲開始時(shí)間,每項(xiàng)活動(dòng)的最早最遲開始時(shí)間以及完成此活動(dòng)所需的時(shí)間◆輸出工程圖的相關(guān)信息:用戶可根據(jù)自己需要查看相關(guān)信息◆拓?fù)渑判颍阂源藖砼袛鄨D中是否有回路,因?yàn)閳D中如果有回路,工程就無法進(jìn)行◆找出關(guān)鍵活動(dòng)并輸出◆找出關(guān)鍵路徑并輸出概要設(shè)計(jì): 相關(guān)說明:設(shè)某一活動(dòng)的起點(diǎn)為i, 中點(diǎn)為j,完成該活動(dòng)所需時(shí)間為time。AOE網(wǎng)是一個(gè)帶權(quán)的有向無環(huán)圖,其中,頂點(diǎn)表示事件(EVENT),弧表示活動(dòng),權(quán)表示活動(dòng)持續(xù)的時(shí)間。數(shù) 據(jù) 結(jié) 構(gòu)課 程 設(shè) 計(jì) 報(bào) 告理論成績實(shí)踐成績總成績院系: 信息管理學(xué)院 專業(yè): 軟件工程 班級(jí): 軟件Q1141 學(xué)號(hào): 11150038 姓名: 李艷平 教師: 鄧沌華 時(shí)間: 目錄一、 問題的描述二、 系統(tǒng)需求及分析 簡要介紹 需求分析 概要設(shè)計(jì) 詳細(xì)設(shè)計(jì)(1) 數(shù)據(jù)結(jié)構(gòu)(2) 創(chuàng)建有向圖的鄰接表(3) 計(jì)算各事件及活動(dòng)的相關(guān)信息(4) 輸出有向圖的相關(guān)信息(5) 判斷圖中是否有回路(6) 計(jì)算并輸出關(guān)鍵活動(dòng)(7) 計(jì)算并輸出關(guān)鍵路徑(8) 操作入口三、 系統(tǒng)實(shí)現(xiàn)四、 設(shè)計(jì)總結(jié)五、 附件(完整源代碼)一、問題的描述:關(guān)鍵路徑問題(起評(píng)分:85)功能:設(shè)計(jì)一個(gè)程序求出完成整項(xiàng)工程至少需要多少時(shí)間以及整項(xiàng)工程中的關(guān)鍵活動(dòng)。 我們通常用AOE網(wǎng)來表示工程。需求分析:◆建立工程網(wǎng)絡(luò)圖:采用鄰接表的算法來建立圖,即順序+鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)。 //頂點(diǎn)所表示的事件的最遲發(fā)生時(shí)間}Vertex。 //該弧所代表的活動(dòng)可以拖延的時(shí)間, 當(dāng)d = 0時(shí)表示此活動(dòng)為關(guān)鍵活動(dòng) struct arode *nextarc。創(chuàng)建有向圖的鄰接鏈表:void CreateGraph(ALGraph *g) //創(chuàng)建有向圖的鄰接鏈表{ ArcNode *p。 gn = n。 } cout\n請輸入各項(xiàng)活動(dòng)的開始事件和結(jié)束事件的編號(hào)及所需時(shí)間:\n。 pvp = j。 gadjlist[0]. = 0。 } } gadjlist[gn1]. = gadjlist[gn1].。 } } for (i = 0。 } }}輸出工程圖的相關(guān)信息:void OutputGraph(ALGraph *g) //輸出工程圖的相關(guān)信息{ coutevent\t ve:\t vlendl。 while (p != NULL) { cout(pstart,pend)。 for (i = 0。 p = gadjlist[i].firstarc。}計(jì)算并輸出關(guān)鍵活動(dòng):void KeyActs(ALGraph *g) //計(jì)算并輸出關(guān)鍵活動(dòng){ ArcNode *p。}計(jì)算并輸出關(guān)鍵路徑:void KeyPath(ALGraph *g) //計(jì)算并輸出關(guān)鍵路徑{ ArcNode t[MAXV], *p。 t[j].end = pend。 //當(dāng)發(fā)生分叉時(shí)用于交換的中間變量 while(count 0) { flag = 0。 if (t[k].start == t[sign].start) //如果有分叉即兩活動(dòng)的開始事件相同、結(jié)束事件不同時(shí)就將兩項(xiàng)活動(dòng) { //的結(jié)束事件交換,以便計(jì)算下一條路徑時(shí)不發(fā)生重復(fù) num = t[k1].end。 cout| |endl。) { ALGraph *G = new ALGraph。 cinch。 KeyPath(G)。 else { cout\n 謝謝使用!歡迎再次使用! endl。 exit(1)。五、附件(完整源代碼):include include define MAXV 50typedef struct//頂點(diǎn)類型{ char num。 //該弧的終點(diǎn),表示此弧所代表的活動(dòng)的結(jié)束事件 int vp。 //該頂點(diǎn)的相關(guān)信息 ArcNode *firstarc。 int i, j, k, n, e, t, sign。 ge = e。 for( k = 1。 ptime = t。 //對(duì)于源點(diǎn),置其ve = 0 for (i = 0。 //對(duì)于匯點(diǎn),置其vl = ve for (i = gn 1。 i gn。 for (int i = 0。 cout\t\t e\t l\t d \t timeendl。 }int TopSort(ALGraph *g) //用來判斷圖中是否有回路{ int i, j, sum = 0。 top。 } p = pnextarc。 while (p != NULL) { if (pd == 0) //如果p指向的活動(dòng)是關(guān)鍵活動(dòng),就將此活動(dòng)輸出 { cout (pstart—pend) 。 i gn。 //sign用來標(biāo)記關(guān)鍵路徑在哪個(gè)位置有分叉 int flag。 flag = 1。 do { cout|歡迎使用!|endl。S39。 } } while (!flag1)。 ) OutputGraph(G)。 || choose2 == 39。 || choose1 == 39。
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評(píng)公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1