如何生成不重復的隨機數


如何對一個數組進行不重復的隨機采樣?

可以先將該數組隨機排序,然后取前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


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM