Institut Galil´ee Algorithmique et programmation C Ing´enieurs 1`ere ann´ee (MACS/T´el´ecom/Mesures/Energie)
T.P. 2
R´ ecursivit´ e et tableaux
Pour tous les exercices de cette feuille, il vous est demand´e d’´ecrire l’algorithme correspondant au probl`eme avant son impl´ementation en langage C.
R´ ecuristvit´ e
Ecrire en C la fonction factorielle et la tester. Ecrire les versions it´eratives avec boucleforetwhileainsi qu’une version r´ecursive. Pour les versions it´eratives, donner la complexit´e des algorithmes propos´es.
Tableaux
1. Ecrire une fonction qui affiche les ´el´ements d’un tableau d’entiers, ainsi que leurs indices et la tester. Donner la complexit´e de l’algorithme corre- spondant.
2. Ecrire une fonction r´ecursive qui teste si deux tableaux d’entiers sont iden- tiques et la tester. Ecrire une version it´erative du probl`eme en ´evaluant sa complexit´e.
3. Ecrire une fonction it´erative qui teste si deux tableaux d’entiers sont iden- tiques et la tester. Quelle est la complexit´e de l’algorithme correspondant?
4. Ecrire une fonction qui compte le nombre d’occurrences d’un ´el´element dans un tableau et la tester.
5. En d´eduire une fonction qui teste si deux tableaux d’entiers contiennent les mˆemes ´el´elments, sans tenir compte de l’ordre dans lequel les ´el´ements sont rang´es. Tester cette fonction.
1