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
Lequel de ces temps d'exécution est polynomial ?
AO(n!)
BO(2ⁿ)
CO(n³)
DO(nⁿ)
2.Facile
Qu'est-ce que la mémoïsation ?
AConvertir automatiquement une récursion en boucle équivalente, si bien qu'aucune pile d'appels n'est nécessaire
BÉcrire des commentaires à côté de chaque ligne de code
CLibérer la mémoire après le retour d'une fonction
DStocker les résultats des appels de fonction pour répondre aux appels répétés depuis la mémoire
3.Facile
Qu'exige la recherche dichotomique de son entrée ?
ALe tableau ne doit contenir que des nombres positifs
BLe tableau ne doit pas avoir plus de 1000 éléments
CLa longueur du tableau doit être une puissance de deux
DLe tableau doit être trié
4.Moyen
Quelle est la solution de la récurrence T(n) = T(n − 1) + O(n) ?
AO(n)
BO(2ⁿ)
CO(n²)
DO(n log n)
5.Moyen
Pourquoi de nombreuses routines de tri des bibliothèques passent-elles au tri par insertion pour les très petits sous-tableaux ?
ALe tri par insertion a peu de surcoût et est rapide sur les entrées petites ou presque triées
BLes algorithmes récursifs ne peuvent pas traiter les tableaux de moins de 10 éléments
CLe tri par insertion est en O(n log n) dans le pire cas
DLe tri par insertion utilise moins de mémoire que tout autre algorithme de tri sur les grandes entrées
6.Moyen
Quelle est la solution de la récurrence T(n) = T(n/2) + O(1) ?
AO(n)
BO(1)
CO(n log n)
DO(log n)
7.Difficile
Le tri topologique n'est possible que pour :
ALes graphes non orientés
BLes graphes orientés acycliques (DAG)
CLes graphes complets
DLes graphes à poids négatifs
8.Difficile
Quel énoncé sur la notation petit o est correct ?
A2n = o(n), car 2n croît lentement
Bn = o(n²), mais n n'est pas o(n)
Cn = o(n), puisque toute fonction est un petit o d'elle-même
Dn² = o(n)
Corrigé
1. C · O(n³)
2. D · Stocker les résultats des appels de fonction pour répondre aux appels répétés depuis la mémoire
3. D · Le tableau doit être trié
4. C · O(n²)
5. A · Le tri par insertion a peu de surcoût et est rapide sur les entrées petites ou presque triées
6. D · O(log n)
7. B · Les graphes orientés acycliques (DAG)
8. B · n = o(n²), mais n n'est pas o(n)
Corrigés complets pas à pas : entraînez-vous sur ce thème sur examproblems.com.