Fiche d’exercices de Algorithmes et complexité avec corrigé
Fiche d’exercices de Algorithmes et complexité gratuite et imprimable : 8 exercices, du niveau facile au niveau examen, avec corrigé. Imprimez-la ou enregistrez-la en PDF.
Pour les enseignants : gratuite à imprimer, copier et utiliser en classe. Chaque nouvelle fiche a de nouvelles valeurs et son propre corrigé. Un lien vers ExamProblems sur la page de votre cours est apprécié.
Nom: ____________________ Date: ____________
1.Facile
Qu'est-ce que la mémoïsation ?
ALibérer la mémoire après le retour d'une fonction
BConvertir automatiquement une récursion en boucle équivalente, si bien qu'aucune pile d'appels n'est nécessaire
CÉcrire des commentaires à côté de chaque ligne de code
DStocker les résultats des appels de fonction pour répondre aux appels répétés depuis la mémoire
2.Facile
Quelles sont les trois étapes d'un algorithme « diviser pour régner » ?
ADeviner, vérifier, recommencer
BDiviser, régner, combiner
CTrier, chercher, renvoyer
DLire, calculer, écrire
3.Facile
Que signifie qu'une opération s'exécute en temps O(1) ?
AElle prend toujours exactement une seconde
BSon temps d'exécution n'augmente pas avec la taille de l'entrée
CElle ne peut être exécutée qu'une seule fois
DElle traite exactement un élément par seconde de temps d'exécution
4.Moyen
Que mesure l'analyse amortie ?
ALe coût d'un algorithme sur la meilleure entrée
BLe coût espéré sur des entrées aléatoires
CLe coût moyen par opération sur une suite d'opérations de pire cas
DLe coût de l'unique opération la plus chère, où qu'elle se trouve dans la suite
5.Moyen
Pourquoi omet-on généralement la base du logarithme dans la notation grand O, comme dans O(log n) ?
ADes logarithmes de bases différentes ne diffèrent que d'un facteur constant
BLa base n'a d'importance que pour n petit
CTous les logarithmes en informatique sont en base 10, elle est donc implicite
DLes logarithmes sont toujours arrondis à l'entier
6.Moyen
Quelle est la complexité temporelle du calcul du n-ième nombre de Fibonacci avec une table remplie de bas en haut ?
AO(n)
BO(n²)
CO(log n)
DO(2ⁿ)
7.Difficile
D'après le théorème maître, T(n) = 8T(n/2) + O(n²) a pour solution :
AΘ(n² log n)
BΘ(n log n)
CΘ(n³)
DΘ(n²)
8.Difficile
Quels sont les coûts en temps et en espace du calcul du n-ième nombre de Fibonacci avec une boucle qui ne conserve que les deux dernières valeurs ?
AO(n) en temps et O(1) en espace
BO(n) en temps et O(n) en espace
CO(log n) en temps et O(n) en espace
DO(2ⁿ) en temps et O(1) en espace
Corrigé
1. D · Stocker les résultats des appels de fonction pour répondre aux appels répétés depuis la mémoire
2. B · Diviser, régner, combiner
3. B · Son temps d'exécution n'augmente pas avec la taille de l'entrée
4. C · Le coût moyen par opération sur une suite d'opérations de pire cas
5. A · Des logarithmes de bases différentes ne diffèrent que d'un facteur constant
6. A · O(n)
7. C · Θ(n³)
8. A · O(n) en temps et O(1) en espace
Corrigés complets pas à pas : entraînez-vous sur ce thème sur examproblems.com.