Algorithm 最小贯穿顶点/节点-非边

Algorithm 最小贯穿顶点/节点-非边,algorithm,language-agnostic,graph,graph-theory,Algorithm,Language Agnostic,Graph,Graph Theory,我们都知道并喜欢s-t最小割算法,但它们都能切掉图中的边。是否存在穿过节点的变体?因此,要使用s-t最小切割算法,您需要将图形转换为流网络。这将给出一个隐式的有向图(边向前流动的方向)。您可以使用此有向表示将图形转换为解决此问题的某种形式。基本上你把每个顶点,V(不包括源和汇)变换成两个顶点,称它们为A和B。A得到所有V的入边,B得到所有V的出边。然后创建最大容量为无穷大的边A->B 我认为如果你在这上面运行通常的s-t最小切割算法,它只会选择你创建的边。我认为唯一必要的修改是,如果A的in阶为

我们都知道并喜欢s-t最小割算法,但它们都能切掉图中的边。是否存在穿过节点的变体?

因此,要使用s-t最小切割算法,您需要将图形转换为流网络。这将给出一个隐式的有向图(边向前流动的方向)。您可以使用此有向表示将图形转换为解决此问题的某种形式。基本上你把每个顶点,V(不包括源和汇)变换成两个顶点,称它们为A和B。A得到所有V的入边,B得到所有V的出边。然后创建最大容量为无穷大的边A->B

我认为如果你在这上面运行通常的s-t最小切割算法,它只会选择你创建的边。我认为唯一必要的修改是,如果A的in阶为1,它可能会选择要剪切的边,但只选择A作为顶点。(这取决于s-t算法的实现)


我希望这是有道理的。我不确定这是否有效(也就是说,我不想想出一个合适的证据),但这是很直观的。我的直觉想法是,如果你切一条“非顶点”边,你也可以切一条“顶点”边,因为它与断开图形的连接具有相同的效果。

同样发布在One上,为了清晰起见,可以在这里进一步参考。。