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
Quelle structure de données convient le mieux à la fonction « annuler » (undo) d'un éditeur de texte ?
AGraphe
BEnsemble haché (hash set)
CFile (queue)
DPile (stack)
2.Facile
Qu'est-ce qui définit un arbre binaire ?
AChaque nœud stocke un nombre binaire
BL'arbre a exactement deux niveaux
CChaque nœud a exactement deux enfants
DChaque nœud a au plus deux enfants
3.Facile
Qu'est-ce qu'un graphe pondéré ?
AUn graphe ayant plus d'arêtes que de sommets
BUn graphe stocké sur disque
CUn graphe dans lequel chaque arête a une valeur numérique, comme un coût ou une distance
DUn graphe dans lequel certains sommets sont plus lourds que d'autres parce qu'ils ont plus d'arêtes
4.Moyen
Un réseau routier compte 100,000 carrefours, chacun relié à environ 4 autres. Quelle représentation est la plus adaptée ?
AUne liste d'adjacence
BUn tas binaire d'arêtes
CUne matrice d'adjacence
DUn unique tableau trié de sommets
5.Moyen
Quelle structure de données un programme en cours d'exécution utilise-t-il pour suivre les appels de fonction actifs et leurs variables locales ?
AUn arbre binaire de recherche de cadres
BLa pile d'appels
CUne table de hachage des fonctions
DLa file de la mémoire du tas
6.Moyen
Quel est le coût de l'insertion d'un élément au milieu d'un tableau de n éléments ?
AO(1), car l'indice est connu
BO(n²), car chaque élément se déplace n fois
CO(log n), grâce à la recherche dichotomique
DO(n), car les éléments suivants doivent être décalés
7.Difficile
Pourquoi un serveur pourrait-il choisir sa fonction de hachage au hasard dans une famille universelle ?
APour que la table de hachage soit triée
BPour garantir que deux clés n'entrent jamais en collision, quelles que soient les clés envoyées par un attaquant
CPour supprimer le besoin de redimensionner la table
DPour rendre très improbable qu'un attaquant puisse choisir de nombreuses clés qui entrent toutes en collision
8.Difficile
Un tableau dynamique double de taille lorsqu'il est plein. Pourquoi de nombreuses implémentations ne le réduisent-elles que lorsqu'il est rempli au quart, et non à moitié ?
APour éviter des redimensionnements répétés lorsque des push et des pop alternent près de la limite
BParce que diviser par deux à la moitié ferait perdre des éléments
CParce que l'allocateur de mémoire ne peut libérer la mémoire que par quarts de bloc
DPour garder le tableau trié
Corrigé
1. D · Pile (stack)
2. D · Chaque nœud a au plus deux enfants
3. C · Un graphe dans lequel chaque arête a une valeur numérique, comme un coût ou une distance
4. A · Une liste d'adjacence
5. B · La pile d'appels
6. D · O(n), car les éléments suivants doivent être décalés
7. D · Pour rendre très improbable qu'un attaquant puisse choisir de nombreuses clés qui entrent toutes en collision
8. A · Pour éviter des redimensionnements répétés lorsque des push et des pop alternent près de la limite
Corrigés complets pas à pas : entraînez-vous sur ce thème sur examproblems.com.