查ICP網(wǎng):全新的綜合網(wǎng)站備案信息查詢網(wǎng)
Copyright ? 2008-2028 www.mshuangcha.com [ 查icp] All Rights Reserved.
拓?fù)渑判蚴莾?nèi)部排序嗎?
對(duì)一個(gè)有向無(wú)環(huán)圖(Directed Acyclic Graph簡(jiǎn)稱DAG)G進(jìn)行拓?fù)渑判颍菍中所有頂點(diǎn)排成一個(gè)線性序列,使得圖中任意一對(duì)頂點(diǎn)u和v,若邊∈E(G),則u在線性序列中出現(xiàn)在v之前。通常,這樣的線性序列稱為滿足拓?fù)浯涡?Topological Order)的序列,簡(jiǎn)稱拓?fù)湫蛄小:?jiǎn)單的說(shuō),由某個(gè)集合上的一個(gè)偏序得到該集合上的一個(gè)全序,這個(gè)操作稱之為拓?fù)渑判颉?/p>
執(zhí)行步驟
由AOV網(wǎng)構(gòu)造拓?fù)湫蛄械耐負(fù)渑判蛩惴ㄖ饕茄h(huán)執(zhí)行以下兩步,直到不存在入度為0的頂點(diǎn)為止。
(1) 選擇一個(gè)入度為0的頂點(diǎn)并輸出之;
(2) 從網(wǎng)中刪除此頂點(diǎn)及所有出邊。
循環(huán)結(jié)束后,若輸出的頂點(diǎn)數(shù)小于網(wǎng)中的頂點(diǎn)數(shù),則輸出“有回路”信息,否則輸出的頂點(diǎn)序列就是一種拓?fù)湫蛄小?/p>