Fiche d’exercices de Structures de données avec corrigé
Fiche d’exercices de Structures de données 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
Dans une table de hachage, qu'est-ce qu'une collision ?
AUne clé ne peut pas du tout être hachée
BDeux clés égales sont stockées deux fois
CDeux clés différentes sont associées au même indice
DLa table manque de mémoire
2.Facile
Quelle structure de données fonctionne selon le principe « dernier entré, premier sorti » (LIFO) ?
AListe chaînée
BTable de hachage
CPile (stack)
DFile (queue)
3.Facile
Qu'est-ce qu'un deque (file à double extrémité) ?
AUne file qui ne permet la suppression qu'à l'arrière
BUne file triée par priorité
CUne structure qui permet l'insertion et la suppression aux deux extrémités
DDeux files distinctes partageant un même tableau
4.Moyen
Quelle condition d'équilibre un arbre AVL maintient-il en chaque nœud ?
AChaque nœud est colorié en rouge ou en noir
BToutes les feuilles sont exactement à la même profondeur
CLes hauteurs des sous-arbres gauche et droit diffèrent d'au plus 1
DLes deux sous-arbres de chaque nœud contiennent exactement le même nombre de nœuds
5.Moyen
Comment insère-t-on un nouvel élément dans un tas binaire ?
AOn le place à la racine et on le fait descendre
BOn reconstruit entièrement le tas
COn l'insère à sa position triée en décalant d'un cran vers la droite tous les éléments plus grands
DOn le place à la fin du tableau et on le fait remonter tant qu'il viole la propriété de tas
6.Moyen
Un trie (arbre de préfixes) est particulièrement efficace pour :
ALa recherche des plus courts chemins
BLe tri de nombres
CLes recherches par préfixe, comme l'autocomplétion
DLe stockage de matrices
7.Difficile
Vous devez conserver les k plus petites valeurs d'un flux de n nombres en utilisant O(k) mémoire. Quelle approche fonctionne en O(n log k) ?
AUn tas max de taille k, dont on remplace la racine lorsqu'une valeur plus petite arrive
BUn tableau trié de toutes les n valeurs
CUn tas min contenant les n valeurs, dont on extrait les k plus petites à la fin
DUne file FIFO des k dernières valeurs
8.Difficile
Quelle affirmation sur le tri par tas (heapsort) est correcte ?
AIl s'exécute en O(n) sur toute entrée
BIl est stable et nécessite O(n) mémoire supplémentaire
CIl nécessite un arbre binaire de recherche comme stockage supplémentaire, donc il utilise O(n) de mémoire en plus
DIl trie sur place en O(n log n) dans le pire cas, mais n'est pas stable
Corrigé
1. C · Deux clés différentes sont associées au même indice
2. C · Pile (stack)
3. C · Une structure qui permet l'insertion et la suppression aux deux extrémités
4. C · Les hauteurs des sous-arbres gauche et droit diffèrent d'au plus 1
5. D · On le place à la fin du tableau et on le fait remonter tant qu'il viole la propriété de tas
6. C · Les recherches par préfixe, comme l'autocomplétion
7. A · Un tas max de taille k, dont on remplace la racine lorsqu'une valeur plus petite arrive
8. D · Il trie sur place en O(n log n) dans le pire cas, mais n'est pas stable
Corrigés complets pas à pas : entraînez-vous sur ce thème sur examproblems.com.