如何生成不重复的随机数

如何对一个数组进行不重复的随机采样?

可以先将该数组随机排序,然后取前m个数。

Matlab自带函数randperm(n)可以产生1到n的整数的无重复的随机排列,利用它就可以得到无重复的随机数。

randperm(n):产生一个1到n的随机顺序。 
>> randperm(10)

ans =

10 4 5 2 9 7 3 6 1 8

随机抽取6个不重复的数:

>> randperm(10, 6)

ans =

5 3 6 2 9 10

猜你喜欢

转载自www.cnblogs.com/jiangkejie/p/11135212.html