Questions tagged «graph-algorithms»

1
min cut比网络流更容易吗?
感谢最大流量最小割定理,我们知道我们可以使用任何算法来计算网络图中的最大流量来计算最小割。因此,计算最小 -cut的复杂度不超过计算最大 -flow 的复杂度。(s,t)(s,t)(s,t)(s,t)(s,t)(s,t)(s,t)(s,t)(s,t) 会更少吗?是否有一种算法可以计算出比任何最大流量算法都快的最小切割?(s,t)(s,t)(s,t) 我试图找到一种减少方法,以将)-最大流量问题减少为 -min-cut问题,但我找不到。我的第一个想法是使用分治法:首先找到一个最小割,将图形分为两部分;现在,递归地找到左侧部分的最大流和右侧部分的最大流,并将它们与穿过切口的所有边合并在一起。这确实可以产生最大流量,但是最坏的运行时间可能是最小切割算法运行时间的倍。有更好的减少方法吗?(s,t(s,t(s,t(s,t)(s,t)(s,t)O(|V|)O(|V|)O(|V|) 我意识到最大流量最小割定理表明,计算最大流量值的复杂度与计算最小割容量的复杂度相同,但这不是我要问的。我要问的是找到一个最大流量和一个最小切割(显式)的问题。 这与从最小切割计算最大流量非常相关,除了:(1)我愿意允许Cook减少(Turning减少),而不仅仅是Karp减少(多对减少),以及(2)也许在给定我们可以找到一些图,使得的最小使计算的最大流变得容易,这在另一个问题之外。GGGG′G′G'G′G′G'GGG

1
如何减少图中的相交边数?
我正在图编辑器上工作。图表显示与连接器(边缘)连接的2D形状(节点)。 我想添加一个操作,在选择了节点的情况下,将它们“解缠结”:如果可能的话,它会重新放置它们以减少交叉边缘的数量(如果必须用弯曲点绘制边缘就可以了) 。 因此,我想要一个图算法,在给定一个(拓扑)图嵌入及其节点子集的情况下,仅修改那些节点上的嵌入(拓扑),以最大程度地减少交叉边缘的数量。 通过阅读有关顶点图的信息并浏览Cabello和Mohar(2013),我认为这个问题是NP-难的。因此,对于任何给定参数值都具有已知的多项式时间复杂度的参数化算法(例如,相交边的数量),我将感到满意。这似乎是可行的,但我个人很难提出这样的算法。 问题: 我在哪里寻找这样的算法? 是否存在? 在现有软件中? 这样的操作是否有任何重要的实践经验?(理论上看起来不错的东西在实践中可能并不那么好,反之亦然。) (我不确定在哪里最好问这个问题:在这里,在StackOverflow还是MathOverflow上?)
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.