Code: Select all
vector
Code: Select all
Code: Select all
[ 2D matrix, K rows x N columns ] * [ 1D column vector, N elements ] = [ 1D column vector, K elements ]
Grundsätzlich wird der 2D -Vektor mit 1D -Vektor multipliziert und führt zu 1D -Vektor. Eine andere Möglichkeit besteht darin, den 2D -dimensionalen Vektor wie folgt zu verwenden: < /p>
Code: Select all
[ 2D matrix, K rows x N columns ] * [ 2D matrix, N rows x 1 column ] = [ 2D matrix, K rows x 1 column ]
Es werden also nur 2D -Vektoren verwendet. Schließlich kann die Implementierung wie folgt funktionieren: < /p>
Code: Select all
[ 2D matrix, K rows x N columns ] * [ 2D matrix, N rows x 1 column ] = [ 1D column vector, K elements ]
wob Man kann eine Funktion schreiben, die einen beliebigen Typ des Vektors (1D oder 2D) übernimmt. Insgesamt ist das Ergebnis wichtig, wenn eine solche Funktion häufig im Programm verwendet werden soll. Grundsätzlich sind die Fragen die häufigste Praxis? Was ist im Prinzip im Programm im Prinzip besser zu verwenden? 2D -Vektoren sind mächtiger und doch langsamer. Was mich auch stört und meinen Code chaotisch macht
Code: Select all
vector vec(N, def_val);
Wann immer möglich, oder 2D -Vektoren, die (im Falle einer 1 -Dimension) tatsächlich zwei Möglichkeiten hätten:
Code: Select all
vector vec(N, vector(1, def_val));
vector vec(1, vector(N, def_val));