拓撲排序簡介及其應用

2021-09-23 08:06:54 字數 1080 閱讀 6380

拓撲排序是資料結構圖論中的一點內容。

拓撲排序主要用來解決有向圖中的依賴解析(dependency resolution)問題。

這裡主要寫幾個模板~~~~

題目鏈結(

#include

#include

using namespace std;

const

int m =

505;

int raod[m]

[m], p[m]

;int ans[m]

;//void init()

intmain()

ans[i]

= k;

p[k]=-

1;for(

int j =

1; j <= n; j++)}

for(

int i =

1; i <= n; i++)}

return0;

}

這樣寫資料量一大就容易超時。

題目鏈結(

#include

#include

#include

using namespace std;

const

int m =

100010

;vector<

int>v[m]

;int p[m]

;int answer[m]

;int n, m;

int cont ;

void

toposort()

}}intmain()

toposort()

;long

long min =

1000000000

;long

long sum =0;

for(

int i =

0; i < cont; i++

)printf

("%lld\n"

, sum);}

return0;

}

利用優先佇列和vector來實現拓撲排序相對來說就快了很多。

拓撲排序及其應用

拓撲排序及其應用 1.拓撲排序的介紹 對於乙個有向無環圖g v,e 來說,其拓撲排序是g中所有結點的一種線性次序。該次序滿足如下條件 如果圖g包含邊 u,v 則結點u在拓撲排序中處於結點v的前面 如果圖g包含環路,則不可能排出乙個線性次序。可以將圖的拓撲排序看作是將圖的所有結點在一條水平線上排開,圖...

拓撲排序的應用

adjlist.h有向無環圖的鄰接表儲存結構 include include include define max vertex num 10 define max name 10 typedef char vertexdata max name typedef struct arcnode arc...

遺傳演算法及其應用簡介

遺傳演算法 genetic algorithm,ga 是計算數學中用於解決最優化問題的搜尋演算法,是進化演算法的一種。進化演算法最初是借鑑了達爾文進化生物學中的一些現象而發展起來的,這些現象包括遺傳 突變 自然選擇以及雜交等。預備知識 達爾文演化論,遺傳學三大基本定律 查爾斯 達爾文 1809 18...