我面临一个问题,需要计算一组集合中所有成对集合之间的交集。其中任何一个集合都不小于一个小常数k,并且我只对两个集合是否有一个大于k-1个元素的交集感兴趣。我不需要实际的交集或确切大小,只需要知道它是否大于k-1。是否有一些巧妙的预处理技巧或漂亮的集合交集算法可以加速处理?
更多信息可用于回答问题:
- 集合表示大型无向稀疏图中的极大团。集合数量可能达到数万个或更多,但大多数集合可能很小。 - 集合已排序,每个集合成员按递增顺序排列。它们实际上是排序列表-我从用于查找最大团的底层库中以这种方式接收它们。 - 不知道集合中元素的分布情况(即它们是否紧密聚集在一起)。 - 大多数集合交集可能为空,因此理想的解决方案是一个巧妙的数据结构,帮助我减少必须进行的集合交集数。
更多信息可用于回答问题:
- 集合表示大型无向稀疏图中的极大团。集合数量可能达到数万个或更多,但大多数集合可能很小。 - 集合已排序,每个集合成员按递增顺序排列。它们实际上是排序列表-我从用于查找最大团的底层库中以这种方式接收它们。 - 不知道集合中元素的分布情况(即它们是否紧密聚集在一起)。 - 大多数集合交集可能为空,因此理想的解决方案是一个巧妙的数据结构,帮助我减少必须进行的集合交集数。