题目:流入若干个对象(整数,按个数流入),事先不知道个数。如何保证随机抽取k个数?
算法:
1、新建一个k位数组。
2、如果i<=k ,num[i] = x
如果i>k,num[rand()%i] = x
可以证明此算法是等概率的,每个数会进入数组的概率都是k/n
题目:流入若干个对象(整数,按个数流入),事先不知道个数。如何保证随机抽取k个数?
算法:
1、新建一个k位数组。
2、如果i<=k ,num[i] = x
如果i>k,num[rand()%i] = x
可以证明此算法是等概率的,每个数会进入数组的概率都是k/n