Bonjour à tous,
je suis tombé sur un algo pas très compliqué, mais j'ai du mal à comprendre l'explication de fréquence, voici l'ago:
et ils expliquent que les fréquences de calcul pour les 1], 2], 3] ème lignes sont:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 public static int count(int[] a) { int n = a.length; int count = 0; for (int i = 0; i < n; i++) { 1] for (int j = i+1; j < n; j++) { 2] for (int k = j+1; k < n; k++) { 3] if (a[i] + a[j] + a[k] == 0) { count++; } } } } return count; }
1] N
2] N^2 / 2 - N/2
3] N^3/6 - N^2/2 + N/3
Je me demande pourquoi N^2 est divisé par 2, le N^3 par 6 et N par 3
Ensuite pourquoi c'est N^3/6 - N^2/2 et pas N^3/6 + N^2/2 alors que c'est +N/3 ?
Merci beaucoup :-)
Adrien
Partager