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

正文內(nèi)容

數(shù)據(jù)結(jié)構(gòu)課程設(shè)計報告---關(guān)鍵路徑-wenkub

2023-02-02 21:52:15 本頁面
 

【正文】 數(shù):endl。//圖中頂點數(shù)和邊數(shù) VNode adjlist[MAXV]。typedef struct//鄰接表頭結(jié)點的類型{ Vertex data。 //該弧所代表的活動的最早開始時間 int l。 //該弧的起點, 表示此弧所代表的活動開始事件 char end。 //頂點入度 int ve。 源點和匯點分別表示整個工程的開始事件和結(jié)束事件ve:任一事件的最早可發(fā)生時間, 其值為源點到該點所有路徑長度的最大值;vl:在不影響整個工程進(jìn)度的情況下各事件的最晚可發(fā)生時間,其值為該點到匯點的最長路徑之差;e:各項活動的最早開始時間,若以i, j表示該活動,則e(i,j) = ve(i);l:各項活動的最晚開始時間,若以i, j表示該活動,則v(i,j) = vl(j)time;d:在不增加整個工程所需總時間的情況下,某項活動可以拖延的時,其值為el;◆ 采用鄰接表的方式建立工程圖◆ 對AOE網(wǎng)進(jìn)行排序, 若發(fā)現(xiàn)回路,則提醒用戶數(shù)據(jù)錯誤,讓其重新輸入◆ 對于源點,對于源點,置其ve = 0,依次計算出各事件的ve;對于匯點,置其vl = ve, 然后依次計算出各事件的vl;再計算出各活動的e, l, d。 關(guān)鍵路徑可以很方便的讓我們估算出某個工程最短的時間開銷,以及這個工程中哪些活動,即哪些項目是主要的,是影響工程進(jìn)度的關(guān)鍵,從而讓我們對工程的實施做出更好的時間安排,并且可以分清主次,抓住核心工程,做到有的放矢。AOE網(wǎng)可以用來估算工程的完成時間。工程通常分為若干個稱為“活動”的子工程。數(shù)據(jù):自行設(shè)計每個活動的前導(dǎo)活動和后續(xù)活動以及活動的進(jìn)行時間,然后依據(jù)這些活動的前后次序,畫出其網(wǎng)絡(luò)圖,選擇存儲結(jié)構(gòu)。操作:(1)求工程最短工期;(2)輸出關(guān)鍵路徑;(3)輸出關(guān)鍵活動。完成了這些“活動”,這個工程就可以完成了。他可以使人們了解: (1). 研究某個工程至少需要多少時間? (2). 哪些活動是影響工程進(jìn)度的關(guān)鍵? 由于AOE網(wǎng)中的有些活動可以并行進(jìn)行,從開始點到各個頂點,以致從開始點到完成點的有向路徑可能不止一條,這些路徑的長度也可能不同。總的來說,正因為關(guān)鍵路徑可以幫助我們對工程進(jìn)行非常有必要的估算,讓我們得以看清全局,作出更為優(yōu)化的安排,所以可見關(guān)鍵路徑的求出對一項工程而言是非常必要的?!?找出關(guān)鍵活動和關(guān)鍵路徑 詳細(xì)設(shè)計: 數(shù)據(jù)結(jié)構(gòu): typedef struct//頂點類型{ char num。 //頂點所表示的事件的最早發(fā)生時間 int vl。 //該弧的終點,表示此弧所代表的活動的結(jié)束事件 int vp。 //該弧所代表的活動的最遲開始時間 int d。 //該頂點的相關(guān)信息 ArcNode *firstarc。 //鄰接鏈表}ALGraph。 do { sign = 1。 } } while (!sign)。 i n。 gadjlist[i]. = gadjlist[i]. = 0。 k++) { cout第k項:。 pend = j+65。 gadjlist[j].++。 int i, k。 i ++) //計算各頂點所表示事件的最早發(fā)生時間ve { p = gadjlist[i].firstarc。 } p = pnextarc。 i ) //計算各頂點所表示事件的最遲發(fā)生時間vl { p = gadjlist[i].firstarc。 } p = pnextarc。 while (p != NULL) { k = pvp。 //某活動可以推遲的時間是其最遲開始時間與最早開始時間之差 p = pnextarc。 i ++) coutgadjlist[i].\t gadjlist[i].\t gadjlist[i].endl。 i++) { ArcNode *p = gadjlist[i].firstarc。 p = pnextarc。 //棧st的指針為top ArcNode *p。 st[top] = i。 //輸出頂點 sum ++。 if (gadjlist[j]. == 0) //入度為0的相鄰頂點入棧 { top ++。 return (sum == gn)。 i gn。 } } coutendl。 //記錄關(guān)鍵路徑的條數(shù) cout\n關(guān)鍵路徑有:endl。 while (p != NULL) { if (pd == 0) { t[j].start = pstart。 } p = pnextarc。 //用于一條關(guān)鍵路徑計算完以后從新計算下一條關(guān)鍵路徑的入口 char num。 sign = k。 } } k++。 } } }}所有操作的入口:void Interface() //所有操作的入口,主函數(shù)通過調(diào)用此函數(shù)來完成相關(guān)操作{ char choose1, choose2, ch。 cout| 開始 S 退出 Q |endl。 cinchoose1。s39。 if (!TopSort(G)) { cout圖中有回路!請檢查后重新輸入!endl。 cout是否顯示事件及活動相關(guān)信息? Yes — Y No — any key endl。 || ch == 39。 KeyActs(G)。 if (choose2 == 39。) flag2 = 1。 } else if (choose1 == 39。) { cout\n 謝謝使用!歡迎再次使用! endl。}三、系統(tǒng)實現(xiàn): 源代碼見報告尾部; 調(diào)試分析,測試數(shù)據(jù)及界面如下:四、設(shè)計總結(jié):由于上學(xué)期時間緊張,關(guān)鍵路徑這塊基本上沒有理解,通過這次課程設(shè)計,我選了這個課題,一是為了讓自己能很好的掌握這個知識點,二是為了在得分的壓力下把輸出多條關(guān)鍵路徑的這個算法寫出來。數(shù)據(jù)結(jié)構(gòu)這門課程對我們學(xué)習(xí)好這個專業(yè)很重要,在以后,我會盡量利用我的空閑時間把以前不熟的和掌握不牢固的知識點再學(xué)習(xí)一遍,讓它成為一門為我所用的課程。 //頂點入度 int ve。 //該弧的起點, 表示此弧所代表的活動開始事件 char end。 //該弧所代表的活動的最早開始時間 int l。typedef struct//鄰接表頭結(jié)點的類型{ Vertex data。//圖中頂點數(shù)和邊數(shù) VNode adjlist[MAXV]。}void CreateGraph(ALGraph *g) //創(chuàng)建有向圖的鄰接鏈表{ ArcNode *p。 cinne。 gn = n。 i++) //初始化頂點信息 { gadjlist[i]. = i+65。 } cout\n請輸入各項活動的開始事件和結(jié)
點擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1