拓撲排序與AOV

2021-06-14 09:59:24 字數 715 閱讀 3080

在乙個表示工程的有向圖中,用頂點表示活動,用弧表示活動之間的優先關係,稱這樣的有向圖為頂點表示活動的網,即aov網(activity on vertex network)。aov網中的弧表示活動之間存在某種制約關係。aov網中不能出現迴路。測試aov網是否存在迴路的方法就是對aov網進行拓撲排序。

設g = (v,e)是乙個有向圖,v中的頂點序列v1,v2,......vn,滿足若從頂點vi到vj有一條路徑,則在頂點序列中頂點vi必在頂點vj之前。則我們稱這樣的頂點序列為乙個拓撲排序。乙個aov網的拓撲序列可能不唯一。

對aov網進行拓撲排序的基本思想:從aov網中選擇乙個入度為0的頂點輸出,然後刪去此頂點,並刪除以此頂點為尾的弧,繼續重複此步驟,直到輸出去全部頂點或者aov網中不存在入度為0的頂點為止。

**如下:

//邊表結點

typedef struct edgenode

edgenode;

//頂點表結構

typedef struct vertexnode

vertexnode;

typedef struct graphadjlist

graphadjlist;

void topologicalsort(graphadjlist gl)

} if (count < gl.vertexnum)

printf("有迴路");

}

AOV網 拓撲排序

aov網路 拓撲排序 前面說了兩個有環的應用 有環 最小生成樹 普利姆演算法,克魯斯卡爾演算法 有環 最短路徑 迪傑斯特拉演算法,弗洛伊德演算法 現在我們說下沒環的圖 在乙個有向圖中,用頂點表示活動,用邊表示頂點活動之間的優先關係,這樣的網我們叫aov網 activity on vertex net...

初識AOV拓撲排序

首先先引入一段概念 在乙個表示工程的有向圖中,用頂點表示活動,用弧表示活動之間的優先關係。這樣的有向圖為頂點表示活動的網,我們稱為aov網 activity on vertex network 程式語言 以c語言為例 中定義為 在乙個有向圖中,若用頂點代表活動,邊代表活動間先後關係,稱該有向圖為頂點...

AOV網 拓撲排序

aov網路 拓撲排序 前面說了兩個有環的應用 有環 最小生成樹 普利姆演算法,克魯斯卡爾演算法 有環 最短路徑 迪傑斯特拉演算法,弗洛伊德演算法 現在我們說下沒環的圖 在乙個有向圖中,用頂點表示活動,用邊表示頂點活動之間的優先關係,這樣的網我們叫aov網 activity on vertex net...