MATLAB求助:生成4行,6n列稀疏矩阵,每6列作为一个子矩阵,每个子矩阵每行3个“1”,每列2个“1”

2026年09月21日 13:42
有1个网友回答
网友(1):

a = perms(1:4);
a(a==2)=1;
a(a==3)=0;
a(a==4)=0;
unique(a);
b = unique(a,'rows')';
[m,n] = size(b);
N = 3;
R = [];
for p = 1:N
    id = randperm(n);
    r = b(:,id);
    id = randperm(m);
    r = r(id,:);
    R = [R r];
end
R = sparse(R)
nnz(R)