a=1:10;%十个数,可以是其他不同的十个
r=zeros(size(a));%每个位置出现的次数,初始化全部为零
for i=1:100
b=a(randperm(length(a)));%b就是a中10个数的随机顺序排列
ind=find(b==1);%找到1的位置,也可以是其他a中的数字
r(ind)=r(ind)+1;%对应位置记录加1个
end
n = 100;
A = [];
for k = 1:n
A(k,:) = randperm(10);
end;
id = 1;
sum(A==id)
X=X(randperm(numel(x)))
numel(x)获得变量长度
randperm(n)产生长度为n的随机数列 如:
randperm(4)
ans=
3 2 1 4
X(...) 取得X中相应元素产生新数列
是的 Matlab程序内核是C语言 m文件是ASCII码文本
% matrix_In是输入矩阵
% matrix_Out是输出矩阵
function [matrix_Out] = Randmatrix(matrix_In)
[line column] = size(matrix_In);
matrix_Out=zeros(line,column);
for i=1:line
seed=randperm(column);
matrix_Out(i,:)= matrix_In(i,seed);
end
end