完全多部图

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_22339457/article/details/82585895

来自京东笔试题,题目如下:

给定一张包含N个点、M条边的无向图,每条边连接两个不同的点,且任意两点间最多只有一条边。对于这样的简单无向图,如果能将所有点划分成若干个集合,使得任意两个同一集合内的点之间没有边相连,任意两个不同集合内的点之间有边相连,则称该图为完全多部图。现在你需要判断给定的图是否为完全多部图。

这里是我尧师弟的思路,我总结一下,仅供大家参考:

1、通过题目已知:没有边的两个点一定在同一个集合内;

2、求此完全多部图相对于完全图的补图(此补图中,存在边的两个点属于同一集合);

3、遍历步骤2中的补图,将相连的结点放在同一个集合中;

4、计算步骤3中得到的集合之间边的总和,是否和给定的图中边数相同,相同则为yes,否则为no。

猜你喜欢

转载自blog.csdn.net/qq_22339457/article/details/82585895