H2 計算工程完成的關鍵路徑

2021-09-03 03:16:22 字數 2154 閱讀 5624

說明: aoe 網路是有向無環加權圖,其中頂點表示事件,弧表示活動,權表示活動持續的時間,通常可以用來估算工程完成的時間,即圖中從開始點到結束點之間最長的路徑對應的時間。請完成乙個程式,完成下列任務:

1 、計算 aoe 網路對應的拓撲排序。如果排序結果不唯一,請輸出按照從小到大的順序排列的結果。從小到大的順序就是輸入的節點序列順序(參見下面關於輸入格式的說明)。如圖1中滿足要求的拓撲排序是: a-b-c-d-e-f-g-h-k ,圖2中滿足要求的拓撲排序是:v1-v3-v5-v2-v6-v4-v7-v8-v9

2 、計算 aoe 網路的關鍵路徑。注意關鍵路徑可能不唯一,要求輸出所有的關鍵路徑。同樣,按照是按照從小到大的順序輸出。例,如果得到兩條關鍵路徑,分別是0-1-3-6-8-9和0-1-3-4-5-8-9,那麼先輸出後一條路徑,因為兩條路徑中前三個節點相同,而後一條路徑第四個節點的編號小。

測試用例的輸入輸出格式說明:

輸入:節點的個數,邊的條數;

各個節點的名稱序列

邊: < 起點 , 終點 , 權值 > 。說明起點和終點是在各個點在輸入序列中的位置,如圖1中邊 表示為 <0,1,6> 。

輸出:拓撲排序;

關鍵路徑

測試用例0是與圖1相對應的,測試用例1是與圖2相對應的。

#include#include#includeint stack[500] = ;

int tail = -1;

int vnum, enum;

typedef struct node2node2;

node2* node2[500];

typedef struct nodenode;

node node[500];

int topo = 0;

int topolist[500];

int ve[500] = ;

int vl[500] = ;

// typedef struct elelnode;

// elnode el[100];

void criticalpath(int vnum)

}p = p->next;}}

topo++;

}//vl

for(int i = 0; i < vnum; i++)

//i慢慢減小,topolist[i]對應倒序拓撲排序值

for(int i = vnum-1; i >= 0; i--)}}

p = p->next;}}

int topo2[vnum];

for(int i = 0; i < vnum; i++)}}

for(int i = 0; i < vnum; i++)

}p->l = vl[j] - p->value;

p = p->next;}}

}// int flag = 0;

int toposort(int n)

break;}}

}for(int i = 0; i < vnum; i++)

return 0;

}void dfs(node2 *p, int x)

int i = 0;

while(stack[i] != -1)

putchar('\n');

stack[tail] = -1;

tail--;

return;

}else

p = p->next;

}stack[tail] = -1;

tail--;

}}int main()

else

}else}}

}else

ch = getchar();

enum--;

node[x].outdegree++;

node[y].indegree++;

}for(int i = 0; i < 500; i++)

if(toposort(vnum))

else

}criticalpath(vnum);

// for(int i = 0; i < vnum; i++)

for(int i = 0; i < 500; i++)

tail = -1;

stack[++tail] = 0;

dfs(node[0].next, 0);

}

計算工程完成的關鍵路徑

說明 aoe 網路是有向無環加權圖,其中頂點表示事件,弧表示活動,權表示活動持續的時間,通常可以用來估算工程完成的時間,即圖中從開始點到結束點之間最長的路徑對應的時間。請完成乙個程式,完成下列任務 1 計算 aoe 網路對應的拓撲排序。如果排序結果不唯一,請輸出按照從小到大的順序排列的結果。從小到大...

14 計算工程完成的關鍵路徑

說明 aoe 網路是有向無環加權圖,其中頂點表示事件,弧表示活動,權表示活動持續的時間,通常可以用來估算工程完成的時間,即圖中從開始點到結束點之間最長的路徑對應的時間。請完成乙個程式,完成下列任務 1 計算 aoe 網路對應的拓撲排序。如果排序結果不唯一,請輸出按照從小到大的順序排列的結果。從小到大...

H2資料庫的應用

h2是乙個j a編寫的關係型資料庫,它可以被嵌入j a應用程式中使用,或者作為乙個單獨的資料庫伺服器執行。在啟動安裝程式前面,確保pc上已經存在jdk,安裝過程中配置預設就行,當然也可以自己選擇安裝路徑。我這裡選擇安裝到e盤,安裝後h2的目錄如下 在bin目錄下有乙個h2 2.1.210.jar的包...