2017-06-05 1 views
1

Je sais que le modèle de complexité d'algorithme lorsque l'on regarde les boucles imbriquées est généralement n^(m+1), où m est le facteur d'imbrication de boucle (boucle dans une boucle).n * n (non imbriqué) pour la complexité de boucle

Mais qu'en ce cas simple, où

for (i=0; i<n*n; i++) { 
    ... 
} 

est la complexité O(n^2)? Parce que la quantité d'exécutions est la même que pour une boucle for imbriquée normale.

+0

complétez votre question, s'il vous plaît! –

+0

Désolé, le message est tombé en panne lorsque la partie code a démarré. – Thorra

Répondre

0

En supposant que le travail effectué à chaque itération de la boucle for est O (1) alors la complexité de la boucle for est en effet O (n^2) puisque vous itérez n^2 fois. Et oui, vous supposez correctement qu'il serait de la même complexité que:

for(i=0;i<n;i++) { 
    for(j=0;j<n;j++) { 
     ... 
    } 
} 
+0

Merci. Et si le travail fait dans chaque itération dans cette boucle for est O (n) alors je suppose que la complexité totale serait O (n^3) etc. Correct? – Thorra

+0

Oui, c'est correct. – gue