簡體   English   中英

減少二部圖成樹/森林的算法設計(有約束)

[英]Algorithm design (with constraints) to reduce bipartite graph to a tree/forest

我對設計使二部圖非循環的算法有疑問。 我希望有人可以在這里幫助我。 問題說明如下:

考慮無向二部圖G =(U,V,E),其中U = {u_1,u_2,... u_M}是一組M個節點,V = {v_1,v_2,...,v_N}是一個N個節點的集合,E是將U中的節點連接到V中的節點的邊的集合。為簡單起見,假設圖是連接且循環的,即具有循環。

目的是設計一種消除循環的算法,並將圖形縮小為樹木或森林,如下所示。 該算法分幾輪進行。 一輪被描述為選擇U中的每個節點u_i,i = 1、2,...,M,並刪除與其相連的邊。 如果節點u_i被隔離(即它沒有與之相連的邊),我們將忽略它並繼續進行。 這樣,每輪最多去除M個邊緣。 當圖形在某個回合結束時減少為樹木或森林時,算法停止。

我想知道是否可以使用多項式時間算法(以M,N為單位)來設計回合,以使回合數量最小化(用於將圖形縮減為樹/森林)。

請參閱Wikipedia上的“循環”文章。

要檢測任何無向圖中的循環,請執行DFS,並維護已訪問節點的列表。 如果檢測到后邊緣,則這是循環的一部分,您可以從圖形中刪除該后邊緣。 沒有后邊緣的DFS沒有周期。 復雜度為O(M + N)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM