matlab之生成不重复的随机整数

版权声明:如果对您有所启发,欢迎留言告知。若需转载请先联系作者获得许可,转载后请注明出处。 https://blog.csdn.net/yq_forever/article/details/75093433

使用rand函数生成小数再取整的方法往往会造成数据重复。


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



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

     6     4     8     9     3     5     7    10     2     1


那么我们要想得到6个(1,10)之间的随机数的话,只需要

a=randperm(1:10)

再取其前6个即可。

a(1:6)


阅读更多
换一批

没有更多推荐了,返回首页