@ninijia 在 Leetcode每日一题练习 ------ 2493. 将节点分成尽可能多的组 中发帖
从Leetcode 每日一题练习继续讨论:
2493. 将节点分成尽可能多的组
2493. Divide Nodes Into the Maximum Number of Groups
题解
本题是一道难题,也是看了题解才明白如何解决该题。
要想解决该题,首先要观察到一个非常重要的现象,即任何可以被分成两个以上不同组的连通图中的所有节点,最终都可以通过合并归类到两个组中。如当前有四个不同的组,则一定可以将第四组和第二组合并到一起,因为二者都和第三组相连,二第四组和第一组又无关,因此合并后一定满足条件,现在变为三组,同理可以将第三组和第一组合并,这样就变成了两组,由此可以发现,只要图能够被分为两组,且只有位于不同组的节点之间有边,该图就可以被分成不同的组,即图必须是一个二分图。
判断二分图的常用办法即涂色法,即将图中节点分为两组后,每组中的全部节点都是同一种颜色。在实际实现时,只需...