Ich benutze C++.
Ich habe die folgende Matrix:Matrix zu Vektoren C++
{1,2,3,4,5}
{6,7,8,9,10}
{11,12,13,14,15}
{16,17,18,19,20}
{21,22,23,24,25}
und ich möchte die Matrix 5 vectros wie folgt konvertieren:
a[5] = {1,6,11,16,21};
b[5] = {2,7,12,17,22};
c[5] = {3,8,13,18,23};
d[5] = {4,9,14,19,24};
e[5] = {5,10,15,20,25};
ich jede Matrixspalte zu Vektor konvertieren möchten.
ich den Code haben, der 5 Vektoren nimmt und es zu Matrix konvertieren:
typedef int *pInt;
//Each element of arr is a int-type pointer
pInt arr[5] = {a, b, c, d, e};
int matrix[5][5] = {0};
for(int i = 0; i < 5; ++i){
for(int j = 0 ; j < 5; ++j){
matrix[i][j] = arr[j][i];
}
}
So wie kann ich die Matrix in Vektoren umwandeln?
haben Sie irgendwelche Einschränkungen wie: müssen Sie Werte in der Matrix intakt halten, kann die Größe der Matrix variieren oder ist es fest, wie groß die Matrix sein könnte, versuchen Sie, für etwas zu optimieren (Geschwindigkeit, Speicher) usw.? – svs