[英]Minimising Number of Bridges in a Graph
我試圖解決一個基本上減少到這個問題的問題:
給出一組N個節點,編號從1到N和M個邊緣,其中N <10000且M <100000 ,
找到邊緣(u,v) ,當添加到圖形中時 - 最小化圖形中的橋梁數量 。
如果有許多這樣的邊緣 - 打印具有最低字典值的那個邊緣。
什么是解決這個問題的有效方法?
我相信這個問題很難。 這里將概述我能想到的解決方案:
1)在圖中找到所有橋。
2)現在想象橋梁是圖中唯一的邊緣。 您只保留橋接並加入大節點中橋之間的所有節點。
3)你現在有一棵樹。 邊是橋,節點是“大節點”,它們組合了前一個圖的節點。
4)讓我們稱之為森林圖T.
5)連接圖T中的任意兩個節點,創建一個循環。 循環中的任何邊緣都不是橋梁。
6)第5點意味着通過創建盡可能長的循環來找到解決方案。 您只需找到兩個距離最長的節點即可。
7)您可以在圖中找到距離最長的節點。 這里討論如何: 一個線性時間算法,用於找到自由樹中兩個節點之間的最長距離?
如果有任何意見需要進一步解釋,請告訴我。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.