G. Falquet, CUI, Université de Genève 5 de 22
Complexité
Nombre de comparaison en fonction de la taille n de S
T(n) = 1 si n = 2
= 2T(n/2) + 2 si n > 2
Cette équation a pour solution la fonction
T: n → 3n/2 - 2
Algorithme est 25% meilleur que le précédent.
G. Falquet, CUI, Université de Genève 6 de 22
Exemple-2 : SOUS-SUITES MAXIMALES
Etant donné une suite de nombres positifs, nuls ou négatifs
S = <s1, s2, …, sn>
trouver i et j (i≤j) tels que si + si+1 +si+2 + … + sj soit la plus grande possible.
S = <1, -2, 5, -3, -1, 2, -1, 9, -8, 7, 1>
sous-suite max :
Algorithme exhaustif
essayer toutes les valeurs possibles de i et j,
donc n + (n-1) + (n-2) + … + 2 + 1 = (n (n+1))/2 sommes à calculer.
Chaque somme peut se calculer en une opération à partir de la somme précédente.
Donc effectuer (n (n+1))/2 additions et comparaisons.