2 qianchenglenger qianchenglenger 于 2014.07.01 00:25 提问

两个含label队列组成pair,随机抽取

我有一个序列,该序列的元素个数 N 在(0,65535]之间,每一个元素(可以认为是一个unsigned short)都有一个标签label(存在多个元素对应一个label的情况),现在我需要将不同label的元素组成一个pair,随机抽取一些pair,抽取的pair个数 T 不会超过200000000个。需要的效果是相当于:先将元素进行一对一的对比,需要对比 N(N-1) 中情况,将所有比对过程中label不相同的组成pair序列,然后在该pair序列中随机挑选 T 个,组成我们需要的队列。
问题是:我们在组成pair序列时需要的内存过大,而且效率不高。
注意:随机要充分,内存可用最大为1G左右

Csdn user default icon
上传中...
上传图片
插入图片