2015-04-17 85 views
0

我有一個有向圖,例如n×n階矩陣。
我需要找到其中存在的所有循環以及循環中涉及的頂點。在有向圖中找出一個循環中的所有頂點

下面是一個例子:

A B C D  
0 1 1 1  
1 0 1 0  
1 0 0 0  
1 0 0 0  

輸出應該類似於:

No.of cycles found : 4 
A->B->A 
A->B->C->A 
A->C->A 
A->D->A 
+0

那麼你的問題到底是什麼? – ChriPf

+0

我想要算法或邏輯或代碼來找到週期中涉及的頂點列表 – user3035457

+0

這是不可能的多時間,因爲如果它是那麼你可以解決在多時間哈密頓路徑問題,並且這個問題是NP完全問題。更簡單地說,可能的週期數是巨大的,所以這在多項式時間中是不可能的。你可能會蠻力的(遞歸地嘗試所有的路徑)並記錄回到源代碼並打印出來。有點像DFS,除了你可以多次訪問一個節點。不過,即使略微合理的尺寸圖也需要很長時間,而且我不確定是否有更快的方法。 – Jimmy

回答

相關問題