拓撲排序算法圖解 拓撲排序和關(guān)鍵路徑是如何實現(xiàn)的?
拓撲排序和關(guān)鍵路徑是如何實現(xiàn)的?拓撲排序的實現(xiàn)步驟:AOV網(wǎng)構(gòu)造拓撲序列的拓撲排序算法主要是循環(huán)執(zhí)行以下三個步驟,直到?jīng)]有度為0的頂點為止;(1)選擇度為0的頂點并輸出;(2)刪除網(wǎng)絡(luò)中的頂點和所有外
拓撲排序和關(guān)鍵路徑是如何實現(xiàn)的?
拓撲排序的實現(xiàn)步驟:AOV網(wǎng)構(gòu)造拓撲序列的拓撲排序算法主要是循環(huán)執(zhí)行以下三個步驟,直到?jīng)]有度為0的頂點為止;(1)選擇度為0的頂點并輸出;(2)刪除網(wǎng)絡(luò)中的頂點和所有外邊緣;(3) 循環(huán)后,如果輸出頂點的個數(shù)小于網(wǎng)絡(luò)中的頂點個數(shù),則輸出“循環(huán)”,否則,輸出頂點序列為拓撲序列。尋找關(guān)鍵路徑的算法:(1)輸入e弧<J,K>建立AOE網(wǎng)絡(luò)的存儲結(jié)構(gòu)。(2) 從震源點V1開始,設(shè)ve(1)=0,求ve(J)2<=J<=n。(3)從交匯點VN開始,設(shè)VL(n)=ve(n),求VL(I)1<=I<=n-1。(4) 根據(jù)每個頂點的VE和VL值,計算每個弧s(activity)的最早開始時間e(s)和最晚開始時間l(s),其中e(s)=l(s)是關(guān)鍵activity。
拓撲排序和關(guān)鍵路徑是如何實現(xiàn)的?
拓撲排序的實現(xiàn)步驟如下:
AOV網(wǎng)構(gòu)造拓撲序列的拓撲排序算法主要是循環(huán)執(zhí)行以下三個步驟,直到?jīng)]有度為0的頂點;
(1)選擇度為0的頂點并輸出;
(2)刪除頂點從網(wǎng)絡(luò)中選擇度為0的頂點,在循環(huán)的末尾輸出,如果輸出的頂點數(shù)小于網(wǎng)絡(luò)中的頂點數(shù),則輸出“循環(huán)”信息,否則輸出的頂點序列是拓撲序列。
尋找關(guān)鍵路徑的算法:
(1)輸入e弧
(2)從源點V1開始,設(shè)ve(1)=0,求ve(J)2
(3)從匯點VN開始,設(shè)VL(n)=ve(n),求VL(I)1
(4)根據(jù)每個頂點的ve和VL值,找出每個弧s(活動)的最早開始時間e(s)和最晚開始時間l(s),其中e(s)=l(s)是關(guān)鍵活動。
拓撲排序怎么做的?
有向無環(huán)圖(DAG)g的拓撲排序是將g中的所有頂點排列成一個線性序列,使圖中的任意一對頂點u和V,如果邊(u,V)∈e(g),則在線性序列中u出現(xiàn)在V之前。這種線性序列一般稱為滿足拓撲序的序列,簡稱拓撲序列。簡單地說,集合上的偏序稱為全序。
什么是拓撲排序?
拓撲排序是線性代數(shù)的內(nèi)容。有向無環(huán)圖的排序是將圖中的所有頂點排列成一個線性序列,使圖中的任何一對頂點,如果對向點的邊屬于該圖,則線性序列中的一個頂點出現(xiàn)在另一個頂點之前。這種線性序列是滿足拓撲序的序列,簡稱拓撲序列。