标签:
杂谈 |
分类: matlab |
如何用matlab生成随机整数排列?
k=rand(m,n)可以生成m行n列的随机数矩阵,里面元素的取值范围为(0,1)。
[p,q]=sort(k),可以把k里的元素进行排序,p是经过排序后的矩阵,q是由k到p的变化,例如q的第一个元素是3,则代表k的第3个元素移动到了p的第一个元素位置。
用rand()函数和 sort()函数生成随机整数排列示例:
k=rand(10,1)%生成一个10行1列的数组
[m,n]=sort(k)%m为经过排序的k,n为由k到m的移动方式
显然,n是从1到10的随机排列,如果想生成区间[p,q]的随机排列,只需要再在原基础上加(p-1)就可以了。
k=rand(m,n)可以生成m行n列的随机数矩阵,里面元素的取值范围为(0,1)。
[p,q]=sort(k),可以把k里的元素进行排序,p是经过排序后的矩阵,q是由k到p的变化,例如q的第一个元素是3,则代表k的第3个元素移动到了p的第一个元素位置。
用
k=rand(10,1)%生成一个10行1列的数组
[m,n]=sort(k)%m为经过排序的k,n为由k到m的移动方式
显然,n是从1到10的随机排列,如果想生成区间[p,q]的随机排列,只需要再在原基础上加(p-1)就可以了。
前一篇:越是好看的女人越会骗人