Je n'ai pas encore entièrement compris ce que j'écris exactement dans la méthode principale quand j'ai une méthode de double matrice bidimensionnelle. Je veux savoir ce que la sortie du code est, quand A = {{4.00,3.00}, {2.00,1.00}}
et B = {{-0.500, 1.500}, {1.000, -2.0000}}
. Si nous supposons, que lancer l'exception est une complexité constante O(1)
, est-ce exact, que la complexité de la méthode suivante dans Big-O est: O(1 + aRows * bColumns + aRows * bColumns * aColumns + 1)
? Ou est-ce juste O(aRows * bColumns * aColumns)
?Java: méthode matricielle bidimensionnelle - l'appeler dans la méthode principale et sa complexité
public class Exercise {
public static void main(String[] args){
}
public static double[][] m (double[][] A, double [][] B){
int aRows = A.length;
int aColumns = A[0].length;
int bRows = B.length;
int bColumns = B[0].length;
if (aColumns != bRows){
throw new IllegalArgumentException("A: Rows: " + aColumns + " did not match B: Columns " + bRows + ".");
}
double[][] C = new double[aRows][bColumns];
for (int i = 0; i < 2; i++){
for (int j = 0; j < 2; j++){
C[i][j] = 0.00000;
}
}
for (int i = 0; i < aRows; i++){
for (int j = 0; j < bColumns; j++){
for (int k = 0; k < aColumns; k++){
C[i][j] += A[i][k] * B[k][j];
}
}
}
return C;
}
}
Merci, j'ai écrit double [] [] a = nouveau double [] [] {nouveau double [] {4.00, 3.00}, nouveau double [] {- 0.500,1.500}}; double [] [] b = nouveau double [] [] {nouveau double [] {- 0.500,1.500}, nouveau double [] {1.000, -2.00000}}; m (a, b); dans ma méthode principale, mais il ne sera pas imprimer le outptut. Pourquoi donc? – TeachMeJava2017
@ TeachMeJava2017 Vous devez l'affecter à une variable et écrire le code qui imprime le contenu du tableau. Vous voudrez utiliser 'System.out.print()' pour imprimer plusieurs fois sur la même ligne (ou 'System.out.printf()' si vous vous sentez aventureux), et appelez 'System.out.println() 'entre les lignes du tableau .. – Haem
J'ai donc écrit double [] [] x = m (a, b); System.out.println (x); mais il n'imprimera que la référence et non les valeurs réelles .. [[D @ 7852e922 – TeachMeJava2017