当前位置: 首页 > 面试题库 >

如何获得NetworkX图的巨型组件?

公孙弘深
2023-03-14
问题内容

我不知道NetworkX最近是否将其中一种方法调整为生成器,而不是返回列表,但是我正在寻找一种获取图形GC的好方法

我有一个工作片段,但看起来效率很低:

# G = nx.Graph()
giant = sorted(nx.connected_component_subgraphs(G), key=len, reverse=True)[0]

有没有更清洁的方法?


问题答案:

在networkx
1.9中,connected_components_subgraphs返回迭代器(而不是排序列表)。迭代器产生的值未按排序顺序。所以要找到最大的,使用max

giant = max(nx.connected_component_subgraphs(G), key=len)

排序为O(n log n)。取最大值为O(n)。



 类似资料:
  • 我想做一个模板,在那里我可以输入一个索引,它会给我在那个索引的类型。我知道我可以用来实现,但我想自己实现它。例如,我想这样做, ...它会给出位置的类型(因为数组是从0开始索引的)。我怎么能这么做?多谢了。

  • 问题内容: 是否可以将值作为数组输入? 如果我尝试使用发送链接,而我想在php端使用,那么该值如何成为数组?因为现在正在返回。它是标题链接中的最后一个ID。有什么建议么? 问题答案: 在PHP中执行此操作的通常方法是输入您的URL而不是: 然后将是这些值的数组。它不是特别漂亮,但是可以直接使用。

  • 问题内容: 我有一个泛型类。在一种方法中,我想获取类型T的类实例,但是我不能调用。 使用它解决问题的首选方法是什么? 问题答案: 简短的答案是,无法找到Java中泛型类型参数的运行时类型。我建议阅读Java教程中有关类型擦除的章节以获取更多详细信息。 一个流行的解决方案是将type参数的传递给泛型类型的构造函数,例如

  • 我正在尝试使用方法将BGR转换为YUV,然后获取对每个组件的引用。源图像()具有以下参数: 深度=8 n频道=3 颜色模型=RGB channelSeq=BGR 宽度=1620 高度=1220 转换并获取转换后的组件: 我有一个方法可以将YUV转换回RGB并保存到文件。当我手动创建YUV组件时(我创建蓝色图像),它可以工作,当我打开图像时,它实际上是蓝色的。但是,当我使用上面的方法创建YUV组件时

  • 问题内容: 我有一个泛型类。在一种方法中,我想获取的类实例,但我无法调用。 使用它解决问题的首选方法是什么? 问题答案: 简短的答案是,无法找到Java中泛型类型参数的运行时类型。我建议阅读Java教程中有关类型擦除的章节以获取更多详细信息。 一个流行的解决方案是Class将type参数的传递给泛型类型的构造函数,例如

  • 问题内容: 我有一个包含许多字段的结构-我已经弄清楚了如何使用反射来提取字段名称,值和标签信息。我还想确定一个字段的值是否不同于该字段的默认值。 目前,我有这个(有效,但有点臭): 在我看来,在这种情况下应该有一种避免类型切换的方法-我正在尝试做的是建立一个字段/值映射,其值不同于默认的零值,例如: 是否有一种优雅的方式来实现这一目标? 谢谢! 问题答案: 对于支持相等操作的类型,您可以只比较包含