C++ 获取不重复随机数
如何在0~1000个 范围内,获取不重复10个数据?关键是 不重复,该如何写?
[解决办法]
ls的方法是可行的,但是如果你要去top k的公司,是显然不行的,效率太低。
看这里:
voidgetKNum(int k, int n)
{///get k nums in 0~n-1 randomly
for(int i=0; i<n; i++)
{
if((bigRand()%(n-i)<k)
{
cout<< i << "\n" ;
k--;
}
}
}
http://blog.csdn.net/hello_world_2012/article/details/8981723