求最大独立集

Find maximal independent set

本文关键字:独立      更新时间:2023-10-16

在给定邻接矩阵的情况下,求无向图的最大独立集的基本朴素方法是什么?它的复杂度是多少?

就像我们有3个顶点,矩阵是:

0 0 0

1 0 1

0 0 0

这里的解将是2,因为最大独立集包括{1,3}。

如何改进幼稚的方法?

我的方法:选择具有最小边数的节点并消除它的所有邻居。从其余的节点中,选择边数最少的节点,重复上述步骤,直到覆盖整个图这是正确的吗?

求最大独立集(MIS):

并行MIS算法使用随机化来获得并发性(Luby的图着色算法)。

最初,每个节点都在候选集C中。每个节点生成一个(唯一的)随机数,并与相邻节点通信。

如果一个节点的数目超过它所有邻居的数目,它加入集合IC的所有邻域都被移除。

此过程一直持续到C为空。

平均而言,该算法在O(log|V|)步之后收敛。