在用matlab实现矩阵重构时遇到了一个问题,例如已知矩阵[1 2;3 4],将左列1、3看为重建元素参与重构,可以补到任一行的左边,空白处用0代替,共有4种结果:
[1 2;3 4];
[3 2;1 4];
[3 1 2;0 0 4];
[0 0 2;1 3 4];
想知道如何通过matlab实现这种结果?
你好哦,同学,我想到了一种办法,你看看:
A=[1,2; 3,4];
n = size(A,1);
for i = 1:1:n
for j = 1:1:n
left = zeros(n,1);
left(i) = A(j,1);
A0 = A;
A0(j,1)=0;
B = [left, A0]
end
end
最后得到四种结果:
B =
1 0 2
0 3 4
B =
3 1 2
0 0 4
B =
0 0 2
1 3 4
B =
0 1 2
3 0 4