2
鉴于A是对称矩阵,大小为n和置换与给定索引的矩阵
A =
1 2 3 4 5 % The Position
1 [0 5 2 4 1
2 5 0 3 0 2
3 2 3 0 0 0
4 4 0 0 0 5
5 1 2 0 5 0]
B是置换矩阵A的行和列
B = [2 4 1 5 3]
输出,我想的行向量是
C =
2 4 1 5 3 % The New Position given by Matrix B
2 [0 0 5 2 3
4 0 0 4 5 0
1 5 4 0 1 2
5 2 5 1 0 0
3 3 0 2 0 0]
我可以通过使用简单的for循环
01得到的输出index = [2,4,1,5,3];
C = zeros(5,5);
for i = 1:5
for j = 1:5
% Position of in square matrix n
% (i,j) = (i-1)*n + j
C(i,j) = A((index(i)-1)*5+index(j));
end
end
但是,如果我想排列大小为80x80的矩阵,那么我需要运行1600次以获得输出。 有没有简单的技巧来做到这一点,而不是使用for循环?
这不起作用,它给出了不同的输出。 – 2014-11-23 02:43:17
它确实对我有用 – 2014-11-23 02:45:58
@ ParagS.Chandakkar,对此感到遗憾。他是正确的,只是因为我的错字,然后得到另一个输出。 – karfai 2014-11-23 02:47:59