我有x个集合,每个元素都有y个元素(未排序的整数).我想找到这组之间的最大交叉大小.
例如:
*5套,尺寸= 3
设置1:1 2 3
第2集:4 2 3
3:5 6 7
第4:5 8 9
第5:5 10 11
最大交点已设置1与集合2,它的大小为2; 答案是2.
所以,我可以在O(x ^ 2*y)中使用HashSets,只需查看所有对并计算它们的交点大小.但我想更快地做到这一点.我认为有特定的算法或数据结构可以提供帮助.你能给我一些想法吗?
更新:x和y大约是10 ^ 3,元素是int.而且没有平等集合.