資料結構與演算法學習 拓撲排序

2021-10-06 10:53:14 字數 424 閱讀 4705

乙個表示工程的有向圖中,用定點表示活動,用弧表示活動之間的優先關係,這樣的有向圖為頂點表示活動的網,稱之為aov網。(類似於分支流程圖)aov網不存在環。且各頂點有先後順序。

aov網輸出所有頂點,並且順序必須按弧的順序(就是按層來輸出全部頂點),這樣的頂點序列稱為拓撲序列。

aov網的拓撲序列並不只有一條(因為每層的頂點是在一起輸出的,他們的順序可以顛倒,只要保證整體的頂點都輸出一次且滿足弧的需求即可)。

拓撲排序就是對乙個有向圖構造拓撲序列的過程。如果全部頂點被輸出,說明是乙個aov網,如果輸出的頂點數少了,即存在環,不是aov網。

拓撲排序的基本思想是,從aov網中選擇入度為0的頂點輸出,刪除頂點,之後與其鄰接的點的入度減少,之後重複上面操作,直到輸出全部頂點或者aov網中不存在入度為0的頂點為止。

編碼時要採用加入入度的鄰接表,之後按上面思想操作

資料結構與演算法學習 選擇排序

選擇排序,選擇排序原理重在乙個 選擇 上,通俗上來說就是把符合要求的資料篩選出來放在合適的位置上。以由小到大排序為例 執行過程為,選擇數列的第i個 i可由數列起始位置開始 並將其假定為最小值,剩下的數列值依次與假定最小值比較,並選擇出真正的最小值。記錄最小值在數列中的位置,交換數列中的最小值與數列的...

演算法學習 拓撲排序

相關例題 要理解拓撲排序,首先需要知道圖論的乙個基本概念 入度 有向圖中某點作為圖中邊的終點的次數之和 某點的入邊條數 與之相對的是出度 出度 有向圖中某點作為圖中邊的起點的次數之和 某點的出邊條數 拿上面那張圖來說,a和b兩點的出度均為1,入度為0,而c點的入度為2 在前面已經說過,我們將每一項工...

資料結構 拓撲排序演算法

簡單地說,由某個集合上的乙個偏序得到該集合上的乙個全序,這個操作稱之為拓撲排序。偏序 只有部分可以比較關係 全序 全部都能比較關係 aov網 用頂點表示活動,用弧表示活動間的優先關係的有向圖稱為頂點表示活動的網。在aov網中,不應該出現有向環,因為存在環意味著某項活動應以自己為先決條件。對給定的ao...