matlab 求矩阵秩,用MATLAB编程求矩阵的秩

for i=n:-1:1

我明白了,就是极大无关组,我的这个程序把所有的基都写出来了,你只要选一个就可以,还对两种矩形的矩阵(例如2×3,3×2都测试了);如果谁会优化这个程序的会更好!

代码如下:ji.m

% A=[17 24 1 8 15

% 23 5 7 14 16

% 4 6 13 20 22

% 8 12 26 40 44]

A=[1, 0, 1, 2; 2, 0, 2, 4; 1, -1, 1, 1];

% A=[2 4 6 8;3 6 9 12]

%

A=[1 2 1;

% 0 0 -1;

% 1 2 1;

% 2 4 1];% A的三组测试数据

r=rank(A);

s1=size(A);

c=1:min(size(A));

combos=combntns(c,r);

s2=size(combos);

if s1(1)<=s1(2)

for

i=1:s2(1)

B(:,:,i)=A(combos(i,1:r),1:s1(2));

if rank(B(:,:,i))==r

C=B(:,:,i)

end

end

else

for

i=1:s2(1)

B(:,:,i)=A(1:s1(1),combos(i,1:r));

if rank(B(:,:,i))==r

C

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值