[L2] Complexité algorithmique (Java)

Réponses à toutes vos questions après le Bac (Fac, Prépa, etc.)
Deluxor
Membre Rationnel
Messages: 581
Enregistré le: 29 Oct 2007, 12:00

[L2] Complexité algorithmique (Java)

par Deluxor » 25 Mar 2013, 11:31

Bonjour à tous!

Pouvez-vous m'indiquer quelle méthode suivre pour résoudre cet exercice?


public static int algo(int m, int n){
[INDENT]for (int i=0; i<n; i++)[/INDENT]
[INDENT][INDENT]for (int j=i; j<n; j++)[/INDENT][/INDENT]
[INDENT][INDENT][INDENT]m++;[/INDENT][/INDENT][/INDENT]
[INDENT]return m;[/INDENT]
}


0) Donnez la valeur renvoyée par algo(0, 4). (Je pense à 12 ?)
1) Donnez la valeur renvoyée par algo(0, 199). (Faut-il conjecturer quelque chose par rapport à la question 0?)
2) Donnez la complexité de algo(0, n).
3) Donnez la complexité de algo(m, 199).


Je vous remercie,

Deluxor.



mrif
Membre Rationnel
Messages: 527
Enregistré le: 18 Mar 2013, 21:26

par mrif » 25 Mar 2013, 12:30

Deluxor a écrit:Bonjour à tous!

Pouvez-vous m'indiquer quelle méthode suivre pour résoudre cet exercice?


public static int algo(int m, int n){
[INDENT]for (int i=0; i<n; i++)[/INDENT]
[INDENT][INDENT]for (int j=i; j<n; j++)[/INDENT][/INDENT]
[INDENT][INDENT][INDENT]m++;[/INDENT][/INDENT][/INDENT]
[INDENT]return m;[/INDENT]
}


0) Donnez la valeur renvoyée par algo(0, 4). (Je pense à 12 ?)
1) Donnez la valeur renvoyée par algo(0, 199). (Faut-il conjecturer quelque chose par rapport à la question 0?)
2) Donnez la complexité de algo(0, n).
3) Donnez la complexité de algo(m, 199).


Je vous remercie,

Deluxor.

Regarde ce que fait la boucle interne. Elle ajoute (n-i) fois 1 à m puisqu'on commence à j=i et on s'arrête à j = n-1. La boucle externe commence à i = 0 et s'arrête à i = n-1 et ajoute à m la somme n +(n-1) + (n-2) + .... + 2 + 1, ce qui donne m+[n(n+1)]/2.

0) on trouve 0 + (4*5)/2 = 10
1) 0 + 199*200/2 = 19900
3) n(n+1)/2
4) n(n+1)/2 indépendant de m

Modif: Dans 4) remplacer n par 199

Avatar de l’utilisateur
fatal_error
Membre Légendaire
Messages: 6610
Enregistré le: 22 Nov 2007, 12:00

par fatal_error » 25 Mar 2013, 13:51

lol

je me disais quel est le boulet qui met un static.

Puis apres j'ai lu java :ptdr:
la vie est une fête :)

Deluxor
Membre Rationnel
Messages: 581
Enregistré le: 29 Oct 2007, 12:00

par Deluxor » 25 Mar 2013, 16:55

Merci beaucoup!

Je vais y songer! Ces programmes me sont tellement pas familiers... ^^

 

Retourner vers ✯✎ Supérieur

Qui est en ligne

Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 59 invités

Tu pars déja ?



Fais toi aider gratuitement sur Maths-forum !

Créé un compte en 1 minute et pose ta question dans le forum ;-)
Inscription gratuite

Identification

Pas encore inscrit ?

Ou identifiez-vous :

Inscription gratuite