一個無環的有向圖稱為無環圖(Directed
Acyclic Graph),簡稱DAG圖。
AOE(Activity
On Edge)網:顧名思義,用邊表示活動的網,當然它也是DAG。與AOV不同,活動都表示在了邊上,如下圖所示:
如上所示,共有11項活動(11條邊),9個事件(9個頂點)。整個工程只有一個開始點和一個完成點。即只有一個入度為零的點(源點)和只有一個出度為零的點(匯點)。
關鍵路徑:是從開始點到完成點的最長路徑的長度。路徑的長度是邊上活動耗費的時間。如上圖所示,1 到2 到 5到7到9是關鍵路徑(關鍵路徑不止一條,請輸出字典序最小的),權值的和為18。
9 11 1 2 6 1 3 4 1 4 5 2 5 1 3 5 1 4 6 2 5 7 9 5 8 7 6 8 4 8 9 4 7 9 2
18 1 2 2 5 5 7 7 9
#include#include #include #include #include #include using namespace std; const int INF = 0; struct node { int x,y,z; }q[1001000]; struct node1 { int a,b; }; int n,m; int t; struct node1 num[1100001]; void add(int x,int y,int z) { q[t].x = x; q[t].y = y; q[t++].z = z; } void BF() { for(int i=0;i<=n;i++) { num[i].a = INF; num[i].b = -1; } num[n].a = 0; int flag = 0; for(int i=1;i