目前,我正在处理一个问题,即涉及一个大小为165GB的大型数据集中创建不相交的集合。现在使用的算法是按秩算法联合。但是,数据集的大小不允许同时包含内存中的所有数据(部分数据驻留在数据库中,而其他部分在内存中处理)。
但问题是在已创建的集合中搜索元素的存在时需要花费很多时间(这需要O(n2)时间)。
感谢是否有人可以提供上述问题的解决方案
答案 0 :(得分:-1)
有许多方法可以对此进行切片和切块。
我的建议是在一次传递中为大数据集的每个元素分配递增索引。然后创建一个正确大小的位向量,以指示"在所有当前分配的集合"的并集中。该位向量应足够小以适应内存。