讓我們繪製N個沒有邊緣的垂直圖。從給定邊緣構建DAG
讓我們邊的名單:
x1 y1
x2 y2
x3 y3
.
.
.
xk yk
我們必須從1處理所有邊緣到k。 我們不得不說,如果第x個邊緣正在循環圖。如果不是,請將其添加到圖表中。
如何有效地做到這一點?我的意思是不要檢查DFS是否第x個邊緣每次都製作循環圖。
有什麼更快的? 這是波蘭SPOJ問題
https://pl.spoj.pl/problems/XIWTPZF/
感謝您的任何幫助。 Chris
這通過去除實際添加的低效和刪除對象模型的邊緣可以節省一些時間,這就需要去耦和刪除對象。此外,您還可以獲得訂單檢查清單以及對象模型,因此最後只需循環檢查訂單檢查清單即可。此時,您可以移除未添加的項目,並且您有最終的列表。如果您在檢測階段使用接口並在使用階段使用單獨的接口,那麼您不必爲使用階段保留較大的接口。 – 2011-05-31 22:09:51