【问题标题】:Reduced row echelon form of binary matrix in MatLabMatLab中二进制矩阵的简化行梯形形式
【发布时间】:2014-10-05 09:26:44
【问题描述】:

大家好,我尝试在 matlab 中找到二进制矩阵的缩减行梯形形式。 mathlab 是否包含任何功能来做到这一点? Standart rref 只计算实数。 谢谢

【问题讨论】:

  • “仅适用于实数”是什么意思?如果您的矩阵是二进制的,则可以使用 double 将其转换为实数
  • 我的意思是我需要使用二进制算术。 1+1 = 0。
  • 上次我检查了1+1=10 而不是0...
  • 所有计算都是模2

标签: matlab matrix


【解决方案1】:
[m,n]=size(a);
b=a;

c=0;

for k=1:min(m,n)

    c=c+1;
i=find(b(:,k));

i(i strictly less c)=[ ];

  if (~isempty(i)) 

    imax=min(i);
    b([c imax],:)=b([imax c],:);

    ck=b(c,:);
p=find(b(:,k));

p(p==c)=[];

    if ~isempty(p)

       v=b(p,:)+repmat(ck,length(p),1);
       b(p,:)=mod(v,2);
    end;
  else
       c=c-1;  
  end;

end;

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-09-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-06-14
    相关资源
    最近更新 更多