Matriu transposada

Exemple de transposició d'una matriu 3×2

Si A denota una matriu de n × m elements:

A = ( a i , j ) = ( a 1 , 1 a 1 , 2 a 1 , 3 a 1 , m a 2 , 1 a 2 , 2 a 2 , 3 a 2 , m a 3 , 1 a 3 , 2 a 3 , 3 a 3 , m a n , 1 a n , 2 a n , 3 a n , m ) M n × m {\displaystyle A=(a_{i,j})={\begin{pmatrix}a_{1,1}&a_{1,2}&a_{1,3}&\cdots &a_{1,m}\\a_{2,1}&a_{2,2}&a_{2,3}&\cdots &a_{2,m}\\a_{3,1}&a_{3,2}&a_{3,3}&\cdots &a_{3,m}\\\vdots &\vdots &\vdots &\ddots &\vdots \\a_{n,1}&a_{n,2}&a_{n,3}&\cdots &a_{n,m}\\\end{pmatrix}}\in {\mathcal {M}}_{n\times m}}

aleshores la permutació de files per columnes o viceversa, en la matriu A, produeix la seva matriu transposada A:

A = ( a 1 , 1 a 2 , 1 a 3 , 1 a n , 1 a 1 , 2 a 2 , 2 a 3 , 2 a n , 2 a 1 , 3 a 2 , 3 a 3 , 3 a n , 3 a 1 , m a 2 , m a 3 , m a n , m ) M m , n {\displaystyle A^{\top }={\begin{pmatrix}a_{1,1}&a_{2,1}&a_{3,1}&\cdots &a_{n,1}\\a_{1,2}&a_{2,2}&a_{3,2}&\cdots &a_{n,2}\\a_{1,3}&a_{2,3}&a_{3,3}&\cdots &a_{n,3}\\\vdots &\vdots &\vdots &\ddots &\vdots \\a_{1,m}&a_{2,m}&a_{3,m}&\cdots &a_{n,m}\\\end{pmatrix}}\in {\mathcal {M}}_{m,n}}

A serà una matriu simètrica, si i només si, n = m i A = A.

Observació sobre la notació. Alguns autors també denoten per A {\displaystyle A'} la matriu transposada de la matriu A {\displaystyle A} .

Propietats

Siguin A i B matrius adequades per a les següents operacions, sabem que:

  • (A) = A
  • (A + B) = A + B
  • Per a qualsevol escalar r, (rA) = rA
  • (AB) = BA

Algorisme

En C++

 typedef vector< vector<int> > Matriu;

 void intercanvia(int& x, int& y){
 x ^= y;
 y ^= x; 
 x ^= y;
 }

 void transposar (Matriu& m){
 int s = m.size(); 
 for(int i = 0;i < s; ++i){
 for(int j = 0; j < i; ++j){
 intercanvia(m[i][j],m[j][i]); 
 }
 }
 }