所以我们假设我们给出了一个图表,你可以删除边缘(不超过(原始图形的边缘)/ 2)直到它是一个二分图。
让我们说:'/ p>
E={ (4, 1),( 1 ,2), (2 ,3),( 7, 2),( 1 ,5),( 8 ,4), (5 ,8),( 8, 9)}
和顶点集:
V= { 1,2,3,4,5,6,7,8}
如何解决这个问题?有没有什么算法可以做到这一点?任何形式的解释将不胜感激。
答案 0 :(得分:1)
选择任意节点作为集合A的第一个成员。如果有任何节点链接到它,则选择一个作为集合B的第一个成员。如果不是,则选择任何其他节点作为集合B的第一个成员。 / p>
现在你有两组节点,A和B.重复选择一个不在任何一个集合中的节点。计算将该节点链接到A和B中的节点的边数。如果有更多边将其链接到集A,则擦除将其链接到集B中的节点的边并将其放入集B.否则擦除将其链接到的边集合A中的节点并将其放在集合A中。请注意,擦除不超过链接到该节点的边缘的一半。