Bonjour

J'ai fait un algorithme et je comprend pas comment calculer la
complexité de celui-ci. En effet il y a des fonctions récursives
donc si je comprend bien il y aura une complexité max ou la récursivité sera
infini ( il y aura toujours des taches) et une complexité minimale ou il y aura qu'une tache. comment montrer la complexité mathématiquement ?

voici la tête de l'algo

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
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
 
// Algorithme
 
Debut
 
	type tache{
		nom;
		tabPrec[];
		tabSuiv[];
		dateTot;
		dateTard;
		}
 
 
}
 
 
//fonction qui calcul la date au plus tot
 
fonction recurTot (tache)
{
 
	dateTOT <- valeurMaxMax(tache.tabPrec.dateTot) + valeur;
 
	pour chaque tab dans tabSuiv
		{
		recurTot (tab)
		}
 
}
 
//fonction qui calcul la date au plus tard
 
fonction recurTard (tache){
 
 
	dateTard<-Min(tache.tabSuiv.dateTard) + valeur;
 
	pour chaque tab dans tabPrec
		{
		recurTard (tab);
		}
}
 
 
//fonction qui calcul le chemin critique
 
function cheminCrit ()
{
	pour chaque uneTache dans taches
	{
		si (uneTache.dateTot == uneTache.dateTard)
 
			// on ajoute la tache dans le chemin critique	
			cheminCrit.add (uneTache);
		Fin si	
 
	}
}
 
 
Fin algo
En gros l'algo permet de calculer les dates au plus tot et tard... d'un graphe
"potentiel métra"
Merci pour vos réponses