3. Donner une version it´erative de l’algorithme 2 et prouver sa correction.
On se propose maintenant de comparer l’efficacit´e de ces trois versions. Pour les complexit´es
en temps, la taille de la donn´ee est mesur´ee par le nombre net les op´erations fondamentales
sont les divisions et les multiplications.
4. Comparer l’encombrement m´emoire de l’algorithme 1 et des deux versions de l’algorithme 2.
5. Calculer la complexit´e en temps de l’algorithme 1.
6. Montrer, sans chercher `a les calculer, que les complexit´es en temps des deux versions de
l’algorithme 2 sont identiques.
7. Evaluer le comportement asymptotique de la complexit´e en temps de l’algorithme 2.
Recherches s´equentielles dans un tableau
1. Donner les algorithmes de recherche s´equentielle d’un ´el´ement xdans une liste d’´el´ements de
mˆeme type dans chacun des cas suivants:
•L’ordre des ´el´ements est quelconque
•La liste est ordonn´ee.
•On utilise une sentinelle.
2. Evaluer en fonction du nombre d’´el´ements de la liste le nombre de comparaisons n´ecessit´ees
par chacune des recherches ci-dessus, dans le pire des cas et en moyenne. Que peut-on dire
des ordres de grandeur asymptotiques?
Fusion de deux tableaux
Donner l’algorithme de fusion de deux tableaux tri´es. Estimer, en fonction de la taille des tableaux,
le comportement asymptotique de l’algorithme.