int[][] A = new int [n][];
for (int i=0; i<n; i++) {
if (i % 2 == 0) // i is a multiple of 2
A[i] = new int [n];
else
A[i] = new int [1];
}
for (int i=0; i<A.length; i++)
for (int j=0; j<A[i].length; j++)
sum = sum + A[i][j];
Donc, je suis un peu confus sur ce que les baies font. La première ligne initialise un tableau 2D avec n colonnes. La première pour les boucles regarde chaque colonne. Si c'est une colonne paire, elle mettra n dans la première ligne de cette colonne. Maintenant, je suis un peu confus à ce sujet, car il est référencé avec un seul support, même si ce devrait être un tableau 2D. La même chose avec le double pour les boucles. Quelle est la différence entre A.length et A [i] .length? D'après ce que je comprends, le double pour les boucles est itérer à travers le tableau et obtenir la somme de tous les éléments. Quelqu'un peut-il clarifier cela parce que je suis un peu perdu sur la syntaxe. Mon instinct dit aussi que ce code s'exécute en O (n^2) à tout le moins à cause du double pour les boucles. Est-ce que cela semble juste?Aidez à déchiffrer ce code et son exécution
Vous devriez marquer ceci avec la langue dans laquelle il est écrit. –